Загрузка макрофайлов
Стационарные макросы и обработчики событий загружаются из Lua-файлов (расширение
*.lua) и/или MoonScript-файлов (расширение*.moon). В дальнейшем будем называть эти файлы макрофайлами. Загрузка макросов происходит при исполнении макрофайлов плагином LuaMacro.Макрофайлы грузятся из последовательности папок (рекурсивно, с подпапками), определямой одним из следующих способов (в порядке приоритетов):
- Последовательность папок, указанная явно (в команде или аргументе функции)
- Значение переменной
MacroPathв файлеluamacro.ini - Папка
%FARPROFILE%\Macros\scripts
Far Manager никогда не вносит никаких изменений в вышеуказанные папки. Набор и содержимое файлов в них определяется исключительно пользователем.
Один макрофайл может содержать произвольное количество макросов и обработчиков событий.
При исполнении макрофайла ему передаётся 2 параметра: (1) полный путь к данному макрофайлу и (2) счётчик количества исполнений. Если в начале макрофайла определить 2 переменные, например:
local MacroFileName, ExeCounter = ...
то эти переменные будут доступны всем макросам и обработчикам событий в данном файле.Если макрофайлы грузятся из последовательности деревьев
root1;root2;..., то это значит, что:- Дерево
root2начнёт грузиться только после загрузкиroot1 - Для каждого дерева
rootNпервым всегда исполняется макрофайл
rootN\_macroinit.lua, если такой файл существует. Порядок исполнения прочих макрофайлов в данном дереве не определён.
- Дерево