Как заставить Finder сортировать по имени, а также сортировать папки перед файлами?

15

Когда я хочу отсортировать мои файлы и папки в Finder (особенно сортировать по имени), они сортируют все элементы по именам, смешивая папки и файлы вместе. Я хочу способ, который сортирует (например, Windows) сначала все папки по имени, а затем все другие элементы по имени. Как я могу это сделать?

Am1rr3zA
источник
1
Сьерра теперь имеет эту функцию - см. Apple.stackexchange.com/questions/54759/…
bmike

Ответы:

9

Для этого не существует встроенной функции в Finder, но с помощью «плагина» TotalFinder вы можете получить это. Он находится на вкладке «Tweaks» в настройках TotalFinder.

Изменить: здесь был скриншот, но он устарел. Взгляните на ответ Робсофта, чтобы увидеть скриншот!

Nagon
источник
Я устанавливаю его, но не могу найти ответ в этой программе. 1 - моя инсталляционная версия была новее вас, и мои настройки Tweaks отличаются от ваших. 2 - это в альфа-версии и истекает, тогда это не хорошо для меня. 3-можете ли вы объяснить, какая часть связана с моим ответом?
Am1rr3zA
У меня тоже самая последняя версия, но я использую шведский как системный язык, поэтому снимок экрана с моего компьютера, вероятно, будет еще более запутанным. Но в последней версии это все еще параметр, который находится сверху на вкладке Tweaks. И когда истечет срок действия альфа-версии, вероятно, выйдет новая или будет выпущена финальная версия, которая будет стоить 15 $, согласно веб-сайту разработчиков.
Нагон
Спасибо за ссылку на TotalFinder, я нахожу это очень полезным уже. Мне нравится вид скрытых файлов - красивый и серый, а не того же цвета, что и у обычных файлов, и вкладки тоже оказываются полезными.
robsoft
@ Am1rr3zA - см. Мой ответ ниже для изображения текущего экрана настроек.
robsoft
6

XtraFinder - бесплатный плагин для Finder, который позволяет сортировать папки перед файлами, выбрав «Расположить папки сверху» в настройках.

После установки и запуска вы можете настроить сортировку папок и многие другие аспекты поведения Finder.

Иоаннис Филиппидис
источник
1
Это отличное решение, так как это не хакерская программа, позволяющая вам продолжать использовать Finder, и это бесплатно.
Габор
3

Существует замена Finder под названием Path Finder, которая будет делать то, что вы хотите. Это немного дороже, но делает намного больше, чем обычное окно поиска.

jdiaz
источник
+1 к твоему -1, потому что я думал, что твой ответ был связан. Я не знаю, кто дает тебе -1 и почему!
Am1rr3zA
но это было не то, что я имею в виду, траектория была отдельной программой и тоже не то, что я хочу!
Am1rr3zA
3

Относительно ответа Total Finder выше (поэтому, пожалуйста, не голосуйте за этот ответ), вот изображение текущей страницы настроек TF (вы попадаете на него из экрана настроек Finder). С этими опциями я определенно получаю папки в верхней части списка.

Вы также можете управлять этим из меню VIEW в Finder, когда TF установлен.

Снимок текущего экрана настроек Total Finder

robsoft
источник
Тэнкс за вашу помощь, но почему бы не проголосовать за ваш ответ?
Am1rr3zA
@ Am1rr3zA - TotalFinder был ответом @ Nagon на самом деле - если бы вам было разрешено вставлять изображения в комментарии, я бы просто поместил это изображение под его / ее ответом. :-)
robsoft
Хорошо, я понял, но я голосую за вашу помощь, принимаю и голосую @nagon answer.
Am1rr3zA
@robsoft - Если вы не возражаете, я могу добавить ваше изображение в свой ответ или, по крайней мере, указать на ваш ответ каким-либо образом? :)
Нагон
@Nagon - во что бы то ни стало, будь моим гостем! :-)
robsoft
3

Вот метод, который включает в себя настройку plist, а не плагин или стороннее приложение.

Подвести итоги:

Показать содержимое пакета Finder.app (находится в System/Library/CoreServices

Сверлить до Contents > Resources > English.lproj. > InfoPlist.strings

Найдите строку “Folder” = “Folder”;

Добавьте начальный пробел перед вторым Folderследующим образом:“Folder” = “ Folder”;

Сохранить InfoPlist.stringsв том же месте (резервное копирование в другом месте, если это необходимо)

Перезапустить Finder ( Ctrl+Option+Click)

Откройте новое окно Finder и сортируйте файлы по типу

Дейв
источник
Ответы на разные вопросы должны быть чем-то большим, чем просто ссылка. Это нормально, чтобы включить ссылку, но, пожалуйста, суммируйте или извлеките ее в ответе. Идея состоит в том, чтобы сделать ответ самостоятельно.
Даниил
Я проверю ваше решение, когда у меня будет время, и если оно сработает, я изменю принятый ответ.
Am1rr3zA
Это решение, похоже, не работает для El-Capitan (версия Finder 10.11). Есть ли обновленное решение для этой проблемы, которое не включает какой-либо плагин или приложение?
Ярон Идан
0

Это возможно, если значки отображаются в виде списка (Cmd + 2) в окне Finder. Сначала щелкните заголовок столбца [Имя] (это позволит отсортировать все файлы по имени), затем щелкните заголовок столбца [Вид] (это позволит отсортировать элементы по типу, но сохранить сортировку имени по группам).

Eimantas
источник
Это не просто сортирует файлы, а группирует по типу файла. Папки не появятся первыми, и все типы файлов будут отсортированы отдельно.
Джош К
это хороший трюк, но я хочу сделать это во всех формах, а не только в форме cmd + 2. но танкс за твой ответ.
Am1rr3zA
0

Так как я обнаружил, что Folderснова и снова выполняю трюк, я создал сценарий bash для автоматизации переименования строки /System/Library/CoreServices/Finder.app/Contents/Resources/English.lproj/InfoPlist.strings.

  1. Сохранить как например finder-folders-first.sh
  2. Сделайте его исполняемым: chmod +x finder-folders-first.sh
  3. Запустить с правами 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 в Dock и выберите Relaunch.

Теперь в Finder щелкните столбец « Вид» один / два раза, чтобы папки были указаны как первая / последняя.

Это работает в Mavericks и Yosemite, но может не работать в более поздних версиях.

ccpizza
источник