zg 30.09.2012 03:26:20 +0200 - build 2851
1. слияние с проектом Spring (https://github.com/shmuz/Spring).
в связи с этим вместо встроенного макроязыка используется скриптовый язык Lua 5.1 (http://www.lua.org).
после перехода на Lua: macroapi_manual.ru.chm.
(Мануал весьма лаконичен, вместо описания функции старого макроязыка приведены ссылки на устаревший раздел
mf.usermenu (mode, filename)
...
- mode может содержать бит 0x100, в этом случае функция возвращается
только по закрытии пользовательского меню (синхронный вызов).
lua:mf.usermenu(0x100)— и ничего не происходит
Re: LuaMacro — Lua как язык макросов
Posted: Sat 23 Aug, 2014 07:57
by Shmuel
John Doe wrote:lua:mf.usermenu(0x100)— и ничего не происходит
Исправлено.
LuaMacro — Lua как язык макросов
Posted: Tue 28 Oct, 2014 13:09
by John Doe
Сложно ли функциям akey и waitkey добавить возможность возвращать INPUT_RECORD?
Не скажу точно когда началось, но уже некоторое время наблюдаю неприятный эффект: каждое последующее выполнение far.MacroLoadAll() занимает всё больше времени.
Можно проверить таким скриптом:
local max = 50
far.Message(" ... ","","","")
for i=1,max do
local start = Far.UpTime
far.MacroLoadAll()
local delay = Far.UpTime-start
far.Message(i..":"..delay,"","","k")
--if delay<500 then win.Sleep(500 - delay) end
end
far.AdvControl"ACTL_REDRAWALL"
В результате время перезагрузки макросов может достигать абсолютно неприемлемых значений (даже не секунды, а десятки секунд)
John Doe wrote:Не скажу точно когда началось, но уже некоторое время наблюдаю неприятный эффект: каждое последующее выполнение far.MacroLoadAll() занимает всё больше времени.
У меня аналогичный эффект. Определил виновника - файл Editor_MouseSelect.lua из комплекта SimSU.
Осталось только разобраться, как он умудряется это делать.
LuaMacro — Lua как язык макросов
Posted: Wed 29 Oct, 2014 00:33
by Shmuel
Shmuel wrote:Определил виновника - файл Editor_MouseSelect.lua из комплекта SimSU.
Осталось только разобраться, как он умудряется это делать.
Вроде починил, в плагине LuaMacro.
С файла Editor_MouseSelect.lua все обвинения сняты, он просто содержал (вполне законную) конструкцию типа pcall(require, "inexistent"), при которой данный эффект проявлялся.
LuaMacro — Lua как язык макросов
Posted: Wed 05 Nov, 2014 12:12
by John Doe
Из окружения макросов не убирается MenuItem/NoMenuItem
LuaMacro — Lua как язык макросов
Posted: Wed 05 Nov, 2014 12:30
by Shmuel
John Doe wrote:Из окружения макросов не убирается MenuItem/NoMenuItem
Хотя прежде я хотел бы поинтересоваться о предполагаемом назначении этой функциональности.
LuaMacro — Lua как язык макросов
Posted: Tue 17 Feb, 2015 08:21
by Shmuel
John Doe wrote: Может быть стоит распространить это и на режим 0?
Возможно.
John Doe wrote: Хотя прежде я хотел бы поинтересоваться о предполагаемом назначении этой функциональности.
По аналогии с вызовом функции. Передача информации вызывающей функции из вызываемой.
LuaMacro — Lua как язык макросов
Posted: Tue 17 Feb, 2015 09:24
by John Doe
Shmuel wrote: По аналогии с вызовом функции.
Это да, до луа макросы и были вместо функций, но интересно зачем это может понадобиться сейчас.
Напомню, на мантисе есть конфликтующее пожелание: http://bugs.farmanager.com/view.php?id=2391
P.S.
Если рассматривать макросы как функции, то надо им и параметры передавать.
Правда и на этот счёт есть "конфликтующее" пожелание: http://bugs.farmanager.com/view.php?id=2310