Простая сортировка по папкам в плейлисте - как это реализовать?

Список разделов Аудиоплеер foobar2000 Есть вопрос!

Описание: У вас проблемы с foobar2000 и вам необходима помощь? Спрашивайте здесь!
Правила раздела: Одна тема — один вопрос или группа связанных вопросов. Обязательно формируйте внятный заголовок, максимально отражающий суть. Подробно описывайте проблему. Не забывайте указать версию плеера, название сборки, по возможности добавить скриншоты проблемы.

Сообщение #1 phenoman » 23.04.2017, 13:26

Добрый день, друзья! Давно пользуюсь foobar2000 и его отчасти_аналогами на Linux. Всё замечательно, но одна мелочь в плеере меня немного огорчает. Это сложный "язык" сортировки в плейлистах. Я хочу просто упорядочить всё по папкам, но для foobar эта элементарная задача оказывается просто какой-то неимоверно сложной.

У меня есть папка "Музыка", в ней лежат все остальные папки (2H Company, 2Pac, 8 mm, ABBA, Adam Green, Aesop Rock, AGF+Delay, Agnes Obel, Air... и т.д.). Я пробовал по главному ману сделать вот так,
Код: Выделить всё
$directory(D:\Музыка\,1)
но в заведомых полях лежат не названия папок 2H Company, 2Pac, 8 mm, ABBA, Adam Green, Aesop Rock, AGF+Delay, Agnes Obel, Air, а Музыка. Подскажите пожалуйста, как это реализовать. Мне нужна формула.
phenoman
Автор темы, Новичок
Репутация: 0
С нами: 6 месяцев 27 дней

Сообщение #2 Azaza » 23.04.2017, 14:41

Т.е. Вы хотите, чтобы при добавлении в плейлист всей папки "Музыка" все подпапки сортировались в плейлисте по пути?
Попробуйте в File->Preferences->Shell Integration->Sort incoming files by: прописать
Код: Выделить всё
$pad($directory_path(%path%),257)%filename%|$num(%_subsong%,9)
Или, чтобы сортировать через меню Edit->Sort by file path, то же самое пописать в
File->Preferences->Advanced->Display->Standard sort patterns->file path=$pad($directory_path(%path%),257)%filename%|$num(%_subsong%,9)
Недостаток: если папка содержит в себе одиночные файлы и подпапки, то, в отличие от сортировки в проводнике винды, одиночные файлы в списке будут идти перед подпапками, а не после.
Аудиофилия - это болезнь,поражающая головной мозг.Набор профилактически-превентивных мер против аудиофилии крайне скуден - техническое образование, умение мыслить логически и наличие здравого смысла.
Azaza M
Бывалый
Аватара
Репутация: 55
С нами: 1 год 2 месяца

Сообщение #3 vladj » 23.04.2017, 16:02

phenoman писал(а):Это сложный "язык" сортировки в плейлистах. Я хочу просто упорядочить всё по папкам
Сортировка и группировка в плейлисте это одно, сортировка в медиабиблиотеке, другое.
Сначала приводится в порядок папка с музыкой...например делением на рус-англ, пожатые-не пожатые, по жанрам и
папки со сборниками. И если как выше было подсказано, в панели библиотеки поставить сортировкупо папкам Sort by file path,
все будет бросатся в плейлист без лишних заморочек, имхо.
HTPC Termaltake, eGlobal i5-7200, Asrock Beebox J3160, Onkyo 525E, цап SMSL, фронт Yamaha 8900.
vladj M
Гуру
Аватара
Откуда: Пермский край
Репутация: 305
С нами: 7 лет 9 месяцев

Сообщение #4 RAZOR87 » 23.04.2017, 17:46

В моей сборке так:
File->Preferences->Shell Integration->Sort incoming files by
Спойлер
Код: Выделить всё
$if(%artist%,$if(%album artist%,%album artist%,%artist%)) $if(%date%,%date%) $if(%album%,%album%,%directoryname%) $if(%discnumber%,%discnumber%) $if(%tracknumber%,%tracknumber%)
SimPlaylist
Headers
Спойлер
Код: Выделить всё
$if(%genre%,%genre%,)
Код: Выделить всё
$if($or($strcmp(%album artist%,VA),$strcmp(%band%,VA),$strcmp(%va%,1),$strcmp(%album artist%,Various),$strcmp(%album artist%,Various Artists),$strcmp(%ALBUMARTIST%,Various Artists)),Various Artists,$if(%album artist%,%album artist%,%artist%))
Sorting pattern
Спойлер
Код: Выделить всё
$if(%artist%,$if(%album artist%,%album artist%,%artist%)) $if(%date%,%date%) $if(%album%,%album%,%directoryname%) $if(%discnumber%,%discnumber%) $if(%tracknumber%,%tracknumber%)
Subgroups
Спойлер
Код: Выделить всё
$if(%album%,%album%,%directoryname%)$if(%date%, '('%date%')',)
Код: Выделить всё
$if(%discnumber%,     Disc '['%discnumber%']')
Код: Выделить всё
 '['$caps($info(encoding)) | $if($info(codec_profile),$info(codec) | $info(codec_profile),$info(codec)) | $if($strcmp($info(encoding),lossy),$div($info(samplerate),1000) kHz,$info(bitspersample) bit | $div($info(samplerate),1000) kHz)$if($strcmp($info(channels),1), | Mono)$if($strcmp($info(channels),3), | 2.1)$if($strcmp($info(channels),4), | Quad)$if($strcmp($info(channels),5), | 4.1)$if($strcmp($info(channels),6), | 5.1)$if($strcmp($info(channels),7), | 6.1)$if($strcmp($info(channels),8), | 7.1)$if($strcmp($info(channels),10), | 9.1)$if($strcmp($info(channels),12), | 10.2)$if(%ALBUM DYNAMIC RANGE%, | DR%ALBUM DYNAMIC RANGE%)']'
Вложения
2017-04-23_16-44-23.png
razor-87.deviantart.com
RAZOR87 M
Новичок
Аватара
Возраст: 30
Откуда: Белгород
Репутация: 10
С нами: 5 лет 6 месяцев


Вернуться в Есть вопрос!