Как использовать макрос в user menu (F2)?

Столкнулись с проблемой в использовании макросов? Здесь можно получить помощь.
tstr
Posts: 536
Joined: Thu 16 Apr, 2009 16:15
Has thanked: 13 times
Been thanked: 9 times

Re: Как использовать макрос в user menu (F2)?

Post by tstr »

Latest post of the previous page:

о том и речь, что возможностей сейчас хватает, и каждая из них самодостаточна, а вот о бесшовном их совместном использовании пока речи не может идти. именно из-за этого возникает необходимость в "костылях". понятно, что в рабочем варианте всё "настроено и работает", и эти костыли режут глаз только при глобальных переделках.
Но: многострочный макрос может храниться например в файле, и запускаться через lm:post @path_to_file
на каждый элемент меню писать свой файл ( ведь при "lm:post @path_to_file" нельзя указать что конкретно из этого файла вызвать?) - нерационально,
а при вызове утилит из макроса - теряем удобство использования метасимволов,
с другой стороны - нельзя использовать выражения lua в условиях срабатывания команд в user menu и ассоциациях файлов ("IF EXIST" и "IF DEFINED").
Путей намного больше чем вы думаете, для каждой задачи может быть свой.
спасибо, учту. :wink:
User avatar
John Doe
Бюрократ
Posts: 13064
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 42 times
Been thanked: 319 times

Re: Как использовать макрос в user menu (F2)?

Post by John Doe »

tstr wrote:( ведь при "lm:post @path_to_file" нельзя указать что конкретно из этого файла вызвать?)
Можно, но немного не так.
tstr wrote:а при вызове утилит из макроса - теряем удобство использования метасимволов
Не теряется, если метасимволы передавать в параметром функции.
Или же наоборот, макрос сам может постить команду для исполнения фару (far.MacroPost)
tstr wrote:с другой стороны - нельзя использовать выражения lua в условиях срабатывания команд в user menu и ассоциациях файлов ("IF EXIST" и "IF DEFINED").
Кстати неплохой виш для мантиса может получиться.
User avatar
Cavaler
Posts: 1173
Joined: Mon 27 Jun, 2005 12:06
Been thanked: 5 times
Contact:

Re: Как использовать макрос в user menu (F2)?

Post by Cavaler »

Коллеги, а куда можно положить .lua файл с описанием некоей функции, чтобы потом я мог в меню написать macro:post MyFunction() - и нон бы заработало?
Я как-то рассчитывал, что хватит положить в Profile\Macros, или в Profile\Macros\scripts...
Shmuel
Posts: 6217
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 348 times

Re: Как использовать макрос в user menu (F2)?

Post by Shmuel »

Положить в %farprofile%\Macros\scripts, но определить MyFunction как

Code: Select all

function _G.MyFunction()
  ......
end
(т.е. как глобальную), и поместить её либо вне макросов, либо в автостартующем макросе.
Вызывать можно, опуская _G.
www
Posts: 34
Joined: Tue 05 Feb, 2019 10:39
Has thanked: 3 times

Как использовать макрос в user menu (F2)?

Post by www »

Wave wrote: Sat 15 Aug, 2009 21:35 macro:post Add * . p a r t * . d l l Enter F6 * . r a r Enter Add * . d l l Enter F6 * . m p 3 Enter
То же самое для Far3 получится так

Code: Select all

lua: eval("Keys(\"Add * . p a r t * . d l l Enter F6 * . r a r Enter Add * . d l l Enter F6 * . m p 3 Enter\")", 0)
Post Reply

Return to “Нужна помощь”