eval
ret = eval(S[,Mode[,Lang]])
Данная функция соответствует описанию в Энциклопедии Far Manager, со следующими расширениями:
1. eval может исполнять как Lua-код, так и MoonScript-код
Добавлен опциональный 3-й параметр Lang, указывающий язык кода параметра S
в режимах 0, 1, 3. Допустимые значения: "lua" и "moonscript". Значение по умолчанию – "lua".
2. Параметр S может обозначать скрипт-файл
В режимах 0, 1, 3 параметр S может обозначать скрипт-файл, если этот параметр
начинается с символа @. В этом случае параметр S должен иметь следующий формат:
@<имя файла-скрипта> [<параметры скрипта>]
- В имени файла допустимо использование переменных окружения.
- Опциональные параметры скрипта представляют список выражений, разделённых запятыми.
- Выражения должны использовать тот же язык программирования, что и файл-скрипт.
Пример:
eval("@%MyFarScripts%\\calc.moon 'factorial', 3+5", 0, "moonscript")
3. Новые коды, возвращаемые eval(S, 2)
0(нормальный возврат) : дополняется значениями, возвращаемыми “запускаемым” макросом.-3: если было выведено меню выбора макроса, и пользователь его отменил.-4: если “запускаемый” макрос был прерван в результате ошибки времени исполнения.