Следующие функции имеют особенности реализации, которые накладывают определённые ограничения на их использование в макросах:
mf.exitmf.acallmf.AddExitHandlermf.usermenu (в “асинхронном” режиме вызова)mf.KeysPlugin.CallPlugin.CommandPlugin.ConfigPlugin.Menumf.printЕсли макрос создаёт корутины с помощью coroutine.wrap(f), то вышеперечисленные функции не будут работать, будучи вызванными из тела функции f.
Данного ограничения нет, если корутины создаются с помощью coroutine.create(f).
Вышеперечисленные функции, будучи вызванными прямо или косвенно посредством функции pcall, приведут к немедленному возврату pcall с результатом false.
Данного ограничения нет при использовании LuaJIT 2.x.
Вышеперечисленные функции работают только, будучи вызванными из тела макроса (обычно это функция action).
Это значит, что данные функции не будут работать, будучи вызванными из:
condition макросаОграничения пункта 3 не имеют места, если вышеперечисленные функции вызываются не напрямую, а посредством mf.postmacro или far.MacroPost.