Оскільки я Folder
знову і знову виявляв, що я роблю трюк, я в кінцевому підсумку створив сценарій bash для автоматичного перейменування рядка в /System/Library/CoreServices/Finder.app/Contents/Resources/English.lproj/InfoPlist.strings
.
- Збережіть його як напр
finder-folders-first.sh
- Зробіть його виконуваним:
chmod +x finder-folders-first.sh
- Запустити з правами root:
sudo finder-folders-first.sh
#!/bin/bash
# Make folders sortable first in Finder
if [[ $EUID -ne 0 ]]; then
echo "Script must be run as root! Aborting."
exit 1
fi
cd /System/Library/CoreServices/Finder.app/Contents/Resources/English.lproj/
cp -i InfoPlist.strings InfoPlist_ORIGINAL-`date +%b-%d-%Y_%H_%M_%S`.strings
plutil -convert xml1 InfoPlist.strings
sed 's|<string>Folder</string>|<string> Folder</string>|' InfoPlist.strings > InfoPlist_PATCHED.strings
diff InfoPlist.strings InfoPlist_PATCHED.strings
if [ $? -eq 0 ]; then
echo File already patched! Exiting.
exit -1
else
echo Patching original file...
plutil -convert binary1 InfoPlist_PATCHED.strings -o InfoPlist.strings
fi
echo Restarting Finder...
killall Finder
echo Done!
Останній рядок перезапускає Finder. Щоб виконати те ж саме з графічного інтерфейсу, натисніть Alt + правою кнопкою миші піктограму Finder у док-станції та виберіть Relaunch.
Тепер у Finder клацніть стовпчик Вигляд раз / два, щоб папки були вказані як перші / останні.
Це працює в Mavericks та Yosemite, але може не працювати в пізніших версіях.