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

Столкнулись с проблемой в использовании макросов? Здесь можно получить помощь.
User avatar
John Doe
Бюрократ
Posts: 12162
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 30 times
Been thanked: 159 times

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

Post by John Doe » Fri 10 May, 2013 09:46

Latest post of the previous page:

tstr wrote:( ведь при "lm:post @path_to_file" нельзя указать что конкретно из этого файла вызвать?)
Можно, но немного не так.
tstr wrote:а при вызове утилит из макроса - теряем удобство использования метасимволов
Не теряется, если метасимволы передавать в параметром функции.
Или же наоборот, макрос сам может постить команду для исполнения фару (far.MacroPost)
tstr wrote:с другой стороны - нельзя использовать выражения lua в условиях срабатывания команд в user menu и ассоциациях файлов ("IF EXIST" и "IF DEFINED").
Кстати неплохой виш для мантиса может получиться.

User avatar
Cavaler
Posts: 1169
Joined: Mon 27 Jun, 2005 12:06
Been thanked: 4 times
Contact:

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

Post by Cavaler » Fri 28 Jun, 2013 15:55

Коллеги, а куда можно положить .lua файл с описанием некоей функции, чтобы потом я мог в меню написать macro:post MyFunction() - и нон бы заработало?
Я как-то рассчитывал, что хватит положить в Profile\Macros, или в Profile\Macros\scripts...

Shmuel
Posts: 5681
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 21 times
Been thanked: 199 times

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

Post by Shmuel » Fri 28 Jun, 2013 16:16

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

Code: Select all

function _G.MyFunction()
  ......
end
(т.е. как глобальную), и поместить её либо вне макросов, либо в автостартующем макросе.
Вызывать можно, опуская _G.

www
Posts: 17
Joined: Tue 05 Feb, 2019 10:39
Has thanked: 2 times

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

Post by www » Tue 05 Feb, 2019 15:46

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 “Нужна помощь”