Панельный модуль для обслуживания плейлистов

Здесь обсуждается всё, что касается макросов.
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

Панельный модуль для обслуживания плейлистов

Post by buniak_a_h »

Навеяно этим.
Вроде, получилось нормально. Что ещё может понадобиться - я не знаю

Состав полей, признак полноэкранной панели, сортировка - настраиваются. Доступно 10 видов панели и 5 сортировок.
Проигрывать треки можно как плагином AudioPlayer-ом, так и проигрывателем foobar2000. Справочка (коротенькая) прилагается.

Версия 1.1.5
  1. Теперь по Enter-у указанным в настройке проигрывателем проигрывается текущий трек.
  2. При импорте папки с другой панели импортируются файлы этогй папки и её подпапок.
MediaPanelModule.1_1_5.7z
(12.48 KiB) Downloaded 195 times
Last edited by buniak_a_h on Wed 16 Mar, 2022 15:25, edited 4 times in total.
User avatar
Wave
Posts: 1885
Joined: Thu 04 Aug, 2005 18:47
Has thanked: 14 times
Been thanked: 26 times

Панельный модуль для обслуживания плейлистов

Post by Wave »

Репорты кидать?
При копировании файлов на эту панель не снимается выделение со скопированных файлов.
При удалении файлов с панели нужно нажать Ctrl+R, чтобы перечитать панель, иначе файл на панели ещё отображается, но реально его там уже нет, и если ещё раз нажать F8, то с панели удалится уже другой файл.
Не нашёл, как сменить вид панели. Почему-то у меня нажатие Ctrl+3, Ctrl+4 и проч. ничего не даёт. А, кажется, понял.
F7 ничего не даёт ни при настройке Audioplayer (хотя макрос на F3, который у меня Audioplayer на текущем файле запускает, работает), ни при настройке D:\TOOLS\Media\AIMP\AIMP.exe в качестве пути к «фубару».

Упд. Умудрился повесить конструкцию. Запустил, значит, аудиоплеер и спрятал его в фон, как он, собственно, позволяет. Чуть позже увидел, что курсор не соответствует играемой песне — неудивительно, но всё же. Попробовал достать плеер из фона, но как раз доигрывала последняя песня. Я не уверен, успел его достать или песня доиграла, но с этого момента ФАР не реагировал на клавиатуру и мышь. Нет, не так, ФАР реагировал на нажатие F12, но показывал, что есть единственный экран — с плеером, но самого плеера при этом не видно и куда-то ещё переключиться не получается. В итоге пришлось убивать ФАР.

После этого из F11 и AltShiftF9 исчез пункт с этой мультимедиа-панелью. Удалить макрос (с перезагрузкой макросов) и вернуть его — не помогло. Хотел сбросить настройки, но они, судя по всему, хранятся не в Profile\PluginsData, а где — тут уже моих познаний не хватило.
Last edited by Wave on Mon 14 Mar, 2022 14:52, edited 1 time in total.
Пользуюсь ФАРом больше 20 лет © собирательный.
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

Панельный модуль для обслуживания плейлистов

Post by buniak_a_h »

Wave wrote: Mon 14 Mar, 2022 14:32 Репорты кидать?
Есессно! Для того и опубликовано!
Wave wrote: Mon 14 Mar, 2022 14:32 При копировании файлов на эту панель не снимается выделение со скопированных файлов.
При удалении файлов с панели нужно нажать Ctrl+R, чтобы перечитать панель, иначе файл на панели ещё отображается, но реально его там уже нет, и если ещё раз нажать F8, то с панели удалится уже другой файл.
Что-то функция panel.UpdatePanel работает непредсказуемо. На первых версиях работало, а теперь - нет.
Для ускорения замените в строке 414
panel.UpdatePanel(handle, 1)
на
local NextFN = panel.GetPanelItem(handle,1, math.min(APanel.CurPos+1, APanel.ItemCount)).FileName; Panel.SetPath(0,'.',NextFN)
Wave wrote: Mon 14 Mar, 2022 14:32 F7 ничего не даёт ни при настройке Audioplayer (хотя макрос на F3, который у меня Audioplayer на текущем файле запускает, работает), ни при настройке D:\TOOLS\Media\AIMP\AIMP.exe в качестве пути к «фубару».
Скорее всего это - недостаток диагностики плюс неправильный порядок действий. Имелось в виду, что сначала нужно экспортировать отмеченные/все файлы в файл (F6), а затем проиграть его по F7. А если файла нету, то молча отказывается проигрывать. Потом я, вроде, сделал сохранение имени файла между сессиями, но, наверно, что-то пошло не так. Буду исправлять и диагностику, и удобство.
И, кстати, спасибо за AIMP - не знал, что он тоже запускается с параметрами командной строки. И! У меня - проигрывает…
Wave wrote: Mon 14 Mar, 2022 14:32 Упд. Умудрился повесить конструкцию. Запустил, значит, аудиоплеер и спрятал его в фон, как он, собственно, позволяет.
Сразу вопрос: имеется в виду плагин AudioPlayer ?
Wave wrote: Mon 14 Mar, 2022 14:32 Чуть позже увидел, что курсор не соответствует играемой песне — неудивительно, но всё же.
Ну как бы да. Обратной связи нету, курсор на панели не передвигается. Тут я бессилен.
Wave wrote: Mon 14 Mar, 2022 14:32 Попробовал достать плеер из фона, но как раз доигрывала последняя песня. Я не уверен, успел его достать или песня доиграла, но с этого момента ФАР не реагировал на клавиатуру и мышь. Нет, не так, ФАР реагировал на нажатие F12, но показывал, что есть единственный экран — с плеером, но самого плеера при этом не видно и куда-то ещё переключиться не получается. В итоге пришлось убивать ФАР.
Ниже я про плагин AudioPlayer.
Много раз запускал, переводил плейер в фон (вручную) и снова вытаскивал - не виснет, гад! Но всё же нашёл неприятности.
  1. Плейер по настройке у меня проигрывает только одну песню. Чтобы проиграл весь экспортированный список надо указать ключ /p2
  2. Можно сразу из скрипта запускать AudioPlayer в фоне, указав ключик /h.
Ну и сделал сохранение имени экспортированного файла в базу, чтоб в дальнейшем его проигрывать после перезапуска ФАРа.
Wave wrote: Mon 14 Mar, 2022 14:32
После этого из F11 и AltShiftF9 исчез пункт с этой мультимедиа-панелью. Удалить макрос (с перезагрузкой макросов) и вернуть его — не помогло. Хотел сбросить настройки, но они, судя по всему, хранятся не в Profile\PluginsData, а где — тут уже моих познаний не хватило.
Настройки хранятся в базе плагина LuaFAR. Туда из пишет функция mf.msave. Ну, мне так казалось проще и с точки зрения ресурсов эффективнее. Прочитать и посмотреть их можно командой lua:require"le"(mf.mload('BAX','Playlist'))
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

Панельный модуль для обслуживания плейлистов

Post by buniak_a_h »

P/S. И, кстати, в окне настроек есть кнопка "Сбросить" :-) Ну и можно так: mf.mdelete('BAX','Playlist')
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

Панельный модуль для обслуживания плейлистов

Post by buniak_a_h »

Wave, обновил. Всё, кроме зависа, учтено и сделана попытка исправления; завис не повторился.
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

Панельный модуль для обслуживания плейлистов

Post by buniak_a_h »

buniak_a_h wrote: Mon 14 Mar, 2022 23:35 Всё, кроме зависа, <…> сделана попытка исправления
Про снятие отметки с загруженных файлов забыл …
User avatar
spacedrone808
Posts: 42
Joined: Fri 17 Aug, 2012 11:23
Has thanked: 18 times
Been thanked: 1 time

Плагин для управления плейлистом в Foobar

Post by spacedrone808 »

buniak_a_h wrote: плагин
Что-то я похоже туплю.
Файлики надо класть в папку plugins?

По f11 ничего не вижу, равно как и в конфигураторе плагинов..
Last edited by spacedrone808 on Tue 15 Mar, 2022 08:05, edited 1 time in total.
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

Плагин для управления плейлистом в Foobar

Post by buniak_a_h »

Файлик надо класть в %FARPROFILE%\Macros\scripts или в его подпапку. Рекомендую папку BAX (если ещё что-нить от меня ставить будете ;-) )
P/S. Пункт в меню плагинов (F11) появится после перезагрузки макросов (в комстроке macro:load). Ну или после перезапуска ФАРа
Last edited by buniak_a_h on Tue 15 Mar, 2022 08:41, edited 1 time in total.
User avatar
spacedrone808
Posts: 42
Joined: Fri 17 Aug, 2012 11:23
Has thanked: 18 times
Been thanked: 1 time

Плагин для управления плейлистом в Foobar

Post by spacedrone808 »

buniak_a_h wrote: Tue 15 Mar, 2022 08:27Файлик
Спасибо за детальное обьяснение, для не программистов.
Панель заработала. Но я так понимаю она не считывает текущее состоянии фубарного листа.
те можно сформировать лист, экспортировать его и уже далее запускать фубар?
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

Плагин для управления плейлистом в Foobar

Post by buniak_a_h »

spacedrone808 wrote: Tue 15 Mar, 2022 09:30 она не считывает текущее состоянии фубарного листа.
Увы, обратной связи (от фубара к ФАРу) нет. Поэтому ни прочитать текущий плейлист, ни определить проигрываемый трек и установить указатель панели на него невозможно. Зато есть возможность (не реализованная в скрипте, но легко добавляемая) добавить к проигрываемому фубаром плейлисту файл. Надо? Если да - придумайте клавишу. А то у меня плохо с фантазией.
Хорошо бы, чтоб это была модификация F7 (просто F7 - проиграть выгруженный (если выгруженного нет - выгрузить все во временный файл) плейлист настроенным проигрывателем; Shift+F7 - тоже, но спросить ем проигрывать. Alt+F7 недоступна; Ctrl+F7 - занята.
User avatar
spacedrone808
Posts: 42
Joined: Fri 17 Aug, 2012 11:23
Has thanked: 18 times
Been thanked: 1 time

Плагин для управления плейлистом в Foobar

Post by spacedrone808 »

при попытке сохранить лист по shift f2, вылетает такая ошибка
Attachments
IMG_sp808_20220315_115416_1.jpg
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

Плагин для управления плейлистом в Foobar

Post by buniak_a_h »

Ой, структуру переменной поменял, а код соответственно поменять забыл. Спасибо.
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

Плагин для управления плейлистом в Foobar

Post by buniak_a_h »

Для ускорения замените строку № 480
local list = {Version='1.1.1'; List=mf.serialize(object.List);PanelInfo=PanelInfo}
на
local list = mf.serialize{Version='1.1.1'; List=object.List;PanelInfo=PanelInfo}
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

Плагин для управления плейлистом в Foobar

Post by buniak_a_h »

spacedrone808, поскольку скрипт зажил своей жизнью (для него сделана отдельная тема форума), я бы попросил в дальнейшем писать туда. Ну просто это не плагин, и ветка форума «Far manager -> Нужна помощь» совсем не подходит. Впрочем, она и изначально не подходила; скорее уж «Plugins -> Обсуждение плагинов» или «Plugins -> Предложения и идеи».
Last edited by HaRT on Tue 15 Mar, 2022 12:27, edited 1 time in total.
Reason: Обсуждение подклеено, неактуальное вычеркнуто.
User avatar
spacedrone808
Posts: 42
Joined: Fri 17 Aug, 2012 11:23
Has thanked: 18 times
Been thanked: 1 time

Плагин для управления плейлистом в Foobar

Post by spacedrone808 »

Это вам спасибо!
Завелось. Но созданный плейлист не понимает foobar и судя по всему чтото не то с кодировкой, в переменной owner guid кракозябры.

Несколько комментариев:
  • удаление по f8 возможно тока для одного файла, было бы здорово чтоб это действовало на выделенные
  • добавление папок похоже еще не реализовано
  • если что, могу что-то типа хелпа сделать и как пользоваться
Post Reply

Return to “Обсуждение макросов”