Макрос, реализующий функции плагина Active-Help

Здесь обсуждается всё, что касается макросов.
buniak_a_h
Posts: 2096
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 129 times
Been thanked: 207 times
Contact:

Макрос, реализующий функции плагина Active-Help

Post by buniak_a_h »

Был хороший плагин active-Help, который перестал работать на 64-разрядной версии. Я всех его возможностей не помню, использовал только запуск отмеченного текста как команды ShellExecute и вызов помощи по языку программирования (*.hlp, *.chm). Постарался сделать его заменитель на макро (Lua)



Active-Help.1_13_5.7z
Версия 1.13.5
(15.64 KiB) Downloaded 11 times
settings.cfg.7z
Примерная настройка для получения справки по функциям ФАР-макросов, LuaFAR и т.п.
(499 Bytes) Downloaded 20 times


P/S. Данный скрипт интегрируется с моими же скриптами для выбора элемента таблицы (LuaComplete.lua и LuaComplete Tabbed, просмотра таблиц в панельном модуле TablePanel и мой аналог браузера таблиц (мой - TableBrowser, на замену tableview)
Last edited by buniak_a_h on Thu 08 Oct, 2020 05:12, edited 27 times in total.
User avatar
John Doe
Бюрократ
Posts: 12888
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 295 times

Макрос, реализующий функции плагина Active-Help

Post by John Doe »

Latest post of the previous page:

Возможно ли задать для какой-нибудь маски (например *.lua) два файла, один из которых *.hlp, а другой *.chm?
buniak_a_h
Posts: 2096
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 129 times
Been thanked: 207 times
Contact:

Макрос, реализующий функции плагина Active-Help

Post by buniak_a_h »

John Doe wrote: Mon 11 Sep, 2017 16:46Возможно ли задать для какой-нибудь маски (например *.lua) два файла, один из которых *.hlp, а другой *.chm?
Да, безусловно.
У меня для Delphi указаны и hlp (для самого языка Пасцаль), и chm для библиотеки jedi.
buniak_a_h
Posts: 2096
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 129 times
Been thanked: 207 times
Contact:

Макрос, реализующий функции плагина Active-Help

Post by buniak_a_h »

John Doe wrote: Mon 11 Sep, 2017 16:30Лично я бы настройку ассоциаций вообще изначально сделал бы конфигом в редакторе, а потом уже посмотрел достаточно этого или нет
Добавлено
Например так:
Ну, я примерно так и делал. Хранение настройки сделал в текстовый файл, соответственно загрузку сделал. До того, как узнал про mf.mload/mf.msave
User avatar
John Doe
Бюрократ
Posts: 12888
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 295 times

Макрос, реализующий функции плагина Active-Help

Post by John Doe »

buniak_a_h wrote: Mon 11 Sep, 2017 17:07Да, безусловно.
У меня для Delphi указаны и hlp (для самого языка Пасцаль), и chm для библиотеки jedi.
Ага, меня просто интерфейс сбил с толку.
А Команда для вызова помощи (+параметры) это опциональные поля?
buniak_a_h wrote: Mon 11 Sep, 2017 17:11Ну, я примерно так и делал. Хранение настройки сделал в текстовый файл, соответственно загрузку сделал. До того, как узнал про mf.mload/mf.msave
А при чём тут msave.
Я говорил о том, что можно было бы сэкономить немало часов времени разработки/отладки, если для начала ограничиться текстовым конфигом.
Потом, когда структура данных устаканится, можно и в диалоги вывести конечно.

То, как оно сейчас, учитывая особенности интерфейса, и необходимость как-то неочевидно перемещаться между управляющими элементами, мне не очень удобно.
buniak_a_h
Posts: 2096
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 129 times
Been thanked: 207 times
Contact:

Макрос, реализующий функции плагина Active-Help

Post by buniak_a_h »

John Doe wrote: Mon 11 Sep, 2017 17:34А Команда для вызова помощи (+параметры) это опциональные поля?
Не просто опциональные - теперь оказалось вообще лишние. Ну, на будущее оставил.
Просто когда начинал, то не знал, как вызвать помощь по конкретной теме (ключу). Потом нашёл командную строку для hlp-файлов. Логично предположил (как мне казалось), что аналогичная строка существует и для chm ; просто я её ещё не нашёл. Поэтому оставил эти поля, чтоб тот, кто знает как, смог бы настроить командную строку. Однако с chm оказалось несколько сложнее. Поэтому для chm они вообще лишние; да и для hlp - тоже, т.к. для hlp я командную строку забил в макрос. Руки не дошли почикать (да и пока не знаю, может ещё какие системы помощи есть. Например, VC++ формирует какой-то запрос серверу...)
John Doe wrote: Mon 11 Sep, 2017 17:34
buniak_a_h wrote: Mon 11 Sep, 2017 17:11Ну, я примерно так и делал. Хранение настройки сделал в текстовый файл, соответственно загрузку сделал. До того, как узнал про mf.mload/mf.msave
А при чём тут msave.
При том, что до того, как я узнал про settings и mf.load/mf.save, а читал и сохранял настройки в текстовый файл. Именно такого вида, как Вы нарисовали.
John Doe wrote: Mon 11 Sep, 2017 17:34 Я говорил о том, что можно было бы сэкономить немало часов времени разработки/отладки, если для начала ограничиться текстовым конфигом.
Потом, когда структура данных устаканится, можно и в диалоги вывести конечно.
Я, собственно, и затеял поначалу всю эту канитель, чтобы посмотреть, какие возможности организации диалогов есть в FAR-е. И настройки было только две: клавиша для ShellExecute и клавиша для вызова справки.
John Doe wrote: Mon 11 Sep, 2017 17:34То, как оно сейчас, учитывая особенности интерфейса, и необходимость как-то неочевидно перемещаться между управляющими элементами, мне не очень удобно.
Ну, не последняя версия... По уму надо делать симуляцию грида с двумя столбцами. Хотя, если не делать алиасы, то весь вторичный диалог ("Редактирование помощи") сводится к двум полям: маске файла и многострочному списку файлов. Остальное просто пока без надобности.
Или Ваше замечание относится к первому диалогу? Так там, вроде, ничего лишнего.
Можно, конечно, разбить его не два диалога: настройка горячих клавиш и редактирование ассоциаций. Наверно, это будет правильно...
Спасибо за идею.
User avatar
bigvax
Posts: 22
Joined: Fri 02 Jun, 2006 17:18
Location: где-то во времени
Has thanked: 1 time
Been thanked: 1 time
Contact:

Макрос, реализующий функции плагина Active-Help

Post by bigvax »

Александр, скажите, а где скрипт хранит свои настройки?
И как их можно сохранить/скопировать - это на предмет перетаскивания полностью настроенного «под себя» Фара с машины на машину...
Всегда виртуально Ваш, BigVax
buniak_a_h
Posts: 2096
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 129 times
Been thanked: 207 times
Contact:

Макрос, реализующий функции плагина Active-Help

Post by buniak_a_h »

bigvax wrote: Sun 24 Sep, 2017 12:41Александр, скажите, а где скрипт хранит свои настройки?
И как их можно сохранить/скопировать - это на предмет перетаскивания полностью настроенного «под себя» Фара с машины на машину...
Хранит в базе ФАРа (уж не знаю, что это такое, но работает быстро).
Для перетаскивания там есть кнопки "Экспорт" и "Импорт". Спрашивает путь к файлу... :-)
Если несколько файлов помощи, рекомендую стразу после импорта проиндексировать.
Ну и там много нового появилось (в частности, получать помощь не из редактора, а из командной строки. Бывает надобно...)
2useven10
Posts: 4074
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 5 times
Been thanked: 189 times

Макрос, реализующий функции плагина Active-Help

Post by 2useven10 »

bigvax, скорее всего: %FARPROFILE%\PluginsData\4EBBEFC8-2084-4B7F-94C0-692CE136894D.db
или/и %FARLOCALPROFILE%\PluginsData\4EBBEFC8-2084-4B7F-94C0-692CE136894D.db
4EBBEFC8-2084-4B7F-94C0-692CE136894D - это guid плагина luamacro.
buniak_a_h
Posts: 2096
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 129 times
Been thanked: 207 times
Contact:

Макрос, реализующий функции плагина Active-Help

Post by buniak_a_h »

2useven10 wrote: Sun 24 Sep, 2017 21:31bigvax, скорее всего: ...
Думаю, для миграции настроек на другой комп это не имеет большого значения (хотя интересно). Просто потому что "выдирать" нужные настройки оттуда не имеет смысла; легче выгрузить в файл и загрузить на другом компе.К тому же там при необходимости можно подправить пути (иногда это удобнее, чем настройку вызывать. Например, если файлы мигрировали на другой логический диск или в другой каталог с сохранением структуры). Но для "общей эрудиции" полезно, спасибо.
User avatar
bigvax
Posts: 22
Joined: Fri 02 Jun, 2006 17:18
Location: где-то во времени
Has thanked: 1 time
Been thanked: 1 time
Contact:

Макрос, реализующий функции плагина Active-Help

Post by bigvax »

buniak_a_h, спасибо!
Уже увидел кнопки Импорт/Экспорт в новой версии макроса - очень вовремя оказалось ;)
Всегда виртуально Ваш, BigVax
2useven10
Posts: 4074
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 5 times
Been thanked: 189 times

Макрос, реализующий функции плагина Active-Help

Post by 2useven10 »

John Doe wrote: Thu 07 Sep, 2017 13:01В таком случае будем ждать решения тикета http://bugs.farmanager.com/view.php?id=3483
Не прошло и полгода.
buniak_a_h
Posts: 2096
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 129 times
Been thanked: 207 times
Contact:

Макрос, реализующий функции плагина Active-Help

Post by buniak_a_h »

Я видел, спасибо. Но пока не знаю, где посмотреть. В "ночной сборке" ФАРа - b262 ...
buniak_a_h
Posts: 2096
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 129 times
Been thanked: 207 times
Contact:

Макрос, реализующий функции плагина Active-Help

Post by buniak_a_h »

2useven10, Сорри. уже вышла b263 ... Наука не стоит ...
buniak_a_h
Posts: 2096
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 129 times
Been thanked: 207 times
Contact:

Макрос, реализующий функции плагина Active-Help

Post by buniak_a_h »

2useven10 wrote: Thu 14 Dec, 2017 07:16Не прошло и полгода.
Получил новый плагин (b263). Есть большой (!!!) минус: не реализованы wildcard-ы в <item>. Ну, тогда надо делать ещё одну команду: list (список всех файлов архива).
Просто стандартная ситуация: надо распаковать все текстовые файлы. Или все исходники. Ну, Вы понимаете...
Для моих целей эта версия пока бесполезна... :cry:
2useven10
Posts: 4074
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 5 times
Been thanked: 189 times

Макрос, реализующий функции плагина Active-Help

Post by 2useven10 »

Интересно кто это писал ?
Не реализовано естественное желание распаковать не полностью весь архив, а только один (несколько по списку) файл.
Где здесь слово wildcard ?
buniak_a_h
Posts: 2096
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 129 times
Been thanked: 207 times
Contact:

Макрос, реализующий функции плагина Active-Help

Post by buniak_a_h »

2useven10 wrote: Thu 14 Dec, 2017 10:11Где здесь слово wildcard ?
Ну, извините. Как-то посчитал, что термин "несколько по списку файлов" включает такие конструкции, как *.pas;*.txt;*.doc. Я же не прошу указания имени файла с использованием регэкспов (Что, кстати, наверняка многим было бы полезно). Просто я предполагаю, что если такого не предусмотрено в 7z.exe, то делать сложнее. Но такие комбинации, как я описал, срабатывают при вызове 7z.exe из командной строки; посему казалось естественным реализовать именно тот функционал, что предусмотрен командной строкой 7z.exe
Last edited by buniak_a_h on Thu 14 Dec, 2017 10:20, edited 1 time in total.
Post Reply

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