Ввод в диалоге и выполнение макросов
Posted: Wed 02 Jan, 2019 10:35
Возможно, я опять изобретаю велосипед, но мне показалось удобным то, то сделано. Может, ещё кому понравится...
К написанию этого макроса побудила ограниченность клавиатурных макросов, а именно:
1. Необходимость редактирования клавиатурного макроса, если его логика не ограничивается простым нажатием клавиш
2. Желание давать осмысленные имена макросам с возможностью в дальнейшем удалять и редактировать.
В результате получился макос, который на этапе вода выглядит следующим образом:
В левой части экрана - список введённых макросов, в правой - текст выбранного. Количество строк ограничено размером окна (ну, т.е. простенькие скрипты предполагаются), но зато есть возможность вставить один макрос в другой (см. последнюю строчку текста). Для удобства переноса предусмотрен экспорт и импорт коллекции в файл.
Редактирование макроса у меня повешено на сочетание CtrlShiftM-M (Ctrl+Shift+2 раза M).
Выполнение последнего (по времени) выбранного (или редактировавшегося) макроса повешено на одиночную CtrlShiftM. Ну, типа для скорости и лаконичности вызова.
В этом макросе для импорта-экспорта таблицы используется мой модуль TabUtils; он имеется во вложении. Если Вы не захотите его использовать, то его можно с успехом заменить, например, функцией serialize из %FarHome%\Plugins\LuaMacro\api.lua, или написать что-нить своё.
John Doe, если Вы такое уже писали, то не взыщите - я просто не смог корректно сформулировать поисковый запрос.
P/S Во вложении также в качестве примера приведён скрипт, просто перенумеровывающий строки .
К написанию этого макроса побудила ограниченность клавиатурных макросов, а именно:
1. Необходимость редактирования клавиатурного макроса, если его логика не ограничивается простым нажатием клавиш
2. Желание давать осмысленные имена макросам с возможностью в дальнейшем удалять и редактировать.
В результате получился макос, который на этапе вода выглядит следующим образом:
В левой части экрана - список введённых макросов, в правой - текст выбранного. Количество строк ограничено размером окна (ну, т.е. простенькие скрипты предполагаются), но зато есть возможность вставить один макрос в другой (см. последнюю строчку текста). Для удобства переноса предусмотрен экспорт и импорт коллекции в файл.
Редактирование макроса у меня повешено на сочетание CtrlShiftM-M (Ctrl+Shift+2 раза M).
Выполнение последнего (по времени) выбранного (или редактировавшегося) макроса повешено на одиночную CtrlShiftM. Ну, типа для скорости и лаконичности вызова.
В этом макросе для импорта-экспорта таблицы используется мой модуль TabUtils; он имеется во вложении. Если Вы не захотите его использовать, то его можно с успехом заменить, например, функцией serialize из %FarHome%\Plugins\LuaMacro\api.lua, или написать что-нить своё.
John Doe, если Вы такое уже писали, то не взыщите - я просто не смог корректно сформулировать поисковый запрос.
P/S Во вложении также в качестве примера приведён скрипт, просто перенумеровывающий строки .