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

Здесь обсуждается всё, что касается макросов.
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 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 95 times
settings.cfg.7z
Примерная настройка для получения справки по функциям ФАР-макросов, LuaFAR и т.п.
(499 Bytes) Downloaded 105 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
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

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

Post by buniak_a_h »

Latest post of the previous page:

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.
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

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

Post by buniak_a_h »

2useven10 wrote: Thu 14 Dec, 2017 10:11Где здесь слово wildcard ?
И, кстати, вдогонку (и в оправдание себя, любимого):
Описание строки 7z.exe:
7z <command> [<switches>...] <archive_name> [<file_names>...]
Здесь тоже в <file_names> не указана возможность указания wildcard-ов. А также во всех системных (и стандартных де-факто) командах типа copy, rar и т.д.
Т.е. если аргумент допускает указание списка файлов, то автоматически подразумевается, что в имени допускаются символы * и ? . И это - как_бы стандарт... Не думал, что это надо оговаривать особо...
Last edited by buniak_a_h on Thu 14 Dec, 2017 10:31, edited 1 time in total.
2useven10
Posts: 5204
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 18 times
Been thanked: 310 times

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

Post by 2useven10 »

b264
ccaid
Posts: 908
Joined: Fri 12 Jun, 2009 16:04
Has thanked: 24 times
Been thanked: 6 times

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

Post by ccaid »

а вот выдержка из справки по 7z:
7z <command> [<switch>...] <base_archive_name> [<arguments>...]

<arguments> ::= <switch> | <wildcard> | <filename> | <list_file>
<switch>::= <switch_symbol><switch_characters>[<option>]
<switch_symbol> ::= '/' | '-'
<list_file> ::= @{filename}
wildcard'ы указаны отдельно, список файлов это явное перечисление имен (в данном случае — в файле)
Фар делают добрые люди
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

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

Post by buniak_a_h »

ccaid wrote: Thu 14 Dec, 2017 18:10а вот выдержка из справки по 7z:
Ну, это уже не из справки, наверно, а по документации пошарили.
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

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

Post by buniak_a_h »

2useven10 wrote: Fri 15 Dec, 2017 05:57

В процессе обсуждения упомянулась идея получения списка файлов архива. Может быть полезно... Но вот это - точно изначально не присутствовало в хотелках...
2useven10
Posts: 5204
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 18 times
Been thanked: 310 times

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

Post by 2useven10 »

Есть же тикет на мантисе, у него статус feedback.
К этой теме кактусы и бумеранги и списки не относятся, даже если их здесь вырастили.
User avatar
Dennis_Moore
Posts: 295
Joined: Tue 03 Mar, 2015 19:54
Location: Kiev
Has thanked: 6 times
Been thanked: 17 times

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

Post by Dennis_Moore »

Спасибо buniak_a_h за отличный макрос! В скачиваемой версии при вызове макроса без выделения слова он падает с ошибкой на строке 983. Исправить можно изменив эту строку на editor.Select(nil, F.BTYPE_NONE). Думаю стоит поправить архив в первом сообщении.
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

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

Post by buniak_a_h »

Dennis_Moore, не думал, что им пользуются.
Точнее, один товаристч написал мне в личку, что сломалось. Я ему ответил, что надо поправить. А про эту публикацию я и забыл, извините... К тому же у меня некоторые вещи уже изменились, фильтровать не стал, всё своё новое занесено в первый пост
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

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

Post by buniak_a_h »

Опубликована версия 1.13.4 . Основное изменение - в импортируемых настройках стало возможно указывать пути в виде %FARHOME%\Encyclopedia\…. В первом сообщении приведён пример настроек, использующий "искаробочные" chm-файлы ФАР-а.
User avatar
bigvax
Posts: 28
Joined: Fri 02 Jun, 2006 17:18
Location: где-то во времени
Has thanked: 3 times
Been thanked: 1 time
Contact:

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

Post by bigvax »

Александр, привет!
Поставил новую версию макроса 1.13.4 (раньше стояла 1.13.1), и получил ошибку на входе в Far:
╔════════════════════════════════════════════════════════ LuaMacro ═════════════════════════════════════════════════════════╗ ║ C:\Program Files\Far\Profile\Macros\scripts\Active-Help.lua:5: attempt to call upvalue 'BAX_GetMsg' (a boolean value) ║ ║ stack traceback: ║ ║ C:\Program Files\Far\Profile\Macros\scripts\Active-Help.lua:5: in function 'GetMsg' ║ ║ C:\Program Files\Far\Profile\Macros\scripts\Active-Help.lua:18: in main chunk ║ ║ {C}: in function 'xpcall' ║ ║ C:\Program Files\Far\Plugins\LuaMacro\utils.lua:780: in function <C:\Program Files\Far\Plugins\LuaMacro\utils.lua:757> ║ ║ {C}: in function 'RecursiveSearch' ║ ║ C:\Program Files\Far\Plugins\LuaMacro\utils.lua:849: in function <C:\Program Files\Far\Plugins\LuaMacro\utils.lua:676> ║ ╟───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╢

Файлы GetMsg.lua и TabUtils.lua - также переписал в папке modules/BAX

Far версии 3.0.5675.0 x64
Last edited by bigvax on Thu 08 Oct, 2020 04:47, edited 2 times in total.
Всегда виртуально Ваш, BigVax
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

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

Post by buniak_a_h »

bigvax, в модуль GetMsg.lua, включённый в архив, вкралась странная ошибка: нет последней строки (return GetMsg). Как такое могло получиться, я не знаю (вопрос, наверно, к авторам 7zip). У меня, есессно, было нормально (я этим скриптом пользуюсь постоянно; иначе он не работал бы). Но раз так получилось - закачаю заодно более новую версию и модулей, и самого скрипта. Через несколько минут. А пока, чтоб работало, допишите в конец модуля указанную строчку
User avatar
bigvax
Posts: 28
Joined: Fri 02 Jun, 2006 17:18
Location: где-то во времени
Has thanked: 3 times
Been thanked: 1 time
Contact:

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

Post by bigvax »

Саша, спасибо большое!
Как всегда - оперативно и исчерпывающе!
Всегда виртуально Ваш, BigVax
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

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

Post by buniak_a_h »

Версия 1.13.5:
  1. Настройка скрипта включена в меню настроек плагинов
  2. Исправлена одна мелкая ошибка
  3. Обновлены модули из комплекта поставки скрипта
────────────
За ошибочку в модуле прошу прощения … Никак не мог её обнаружить: и этим скриптом, и модулем GetMsg пользуюсь часто; с той ошибкой, что в архиве, они бы не работали вообще! Т.е. у меня всё хорошо … Может, надо было \n в конец дописать? Были у некоторых древних архиваторов (в т.ч. и в том, что я писал ещё до появления РАР-а!) такая ошибка: последнюю строку не читали. Думал,это давно в прошлом … :-(
Post Reply

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