MacroLib — Far Macro Library

Здесь можно обсудить ваш любимый плагин.
User avatar
sToLp
Posts: 938
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 114 times
Been thanked: 12 times

MacroLib — Far Macro Library

Post by sToLp »

Latest post of the previous page:

По первой части: сообщения об ошибках прекратились.

По второй: макросов выдаёт много, больше дюжины (не стал дожидаться всех).

Max Rusov
Posts: 3651
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Has thanked: 2 times
Been thanked: 19 times

MacroLib — Far Macro Library

Post by Max Rusov »

На этот макрос у меня не ругается. Нужно было пройти все макросы до тех пор пока не возникнет ошибка. Последний - и есть проблемный. Вы так сделали?
User avatar
sToLp
Posts: 938
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 114 times
Been thanked: 12 times

MacroLib — Far Macro Library

Post by sToLp »

Ошибку вызывает любой internal-макрос.

В т.ч. вновь созданный Shell_CtrlShiftI.lua:

Code: Select all

Macro {
  description="";
  area="Shell"; key="CtrlShiftI";
  flags="NoSendKeysToPlugins";
  code="Keys(\"CtrlO\")";
}
Max Rusov
Posts: 3651
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Has thanked: 2 times
Been thanked: 19 times

MacroLib — Far Macro Library

Post by Max Rusov »

Понятно, спасибо.

надо заменить

if m.FileName then

на

if m.FileName and m.action then
User avatar
sToLp
Posts: 938
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 114 times
Been thanked: 12 times

MacroLib — Far Macro Library

Post by sToLp »

Поменял, и теперь всё в порядке.
Спасибо за оперативную починку!
И особая благодарность за продолжение развития плагина!
User avatar
sToLp
Posts: 938
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 114 times
Been thanked: 12 times

MacroLib — Far Macro Library

Post by sToLp »

Составил с расширенной привязкой шорткатов (с каждым из модификаторов: Press, Release, Hold, Single, Double, Down, Up).

При их вызове по CtrlShiftM выводится следующий , отображающий не все макросы из набора.
Так и должно быть?
Attachments
test23.7z
тестовый набор макросов
(642 Bytes) Downloaded 70 times
Shmuel
Posts: 6819
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 528 times

MacroLib — Far Macro Library

Post by Shmuel »

Парочка наблюдений по версии 1.24:
1. Если путь к папке плагина содержит пробелы, то при запуске Фара видим .
2. На Windows XP SP3 x86 при запуске Фара получаем многократное , видимо на каждый нативный макрос. На Windows 7 этого нет.
User avatar
sToLp
Posts: 938
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 114 times
Been thanked: 12 times

MacroLib — Far Macro Library

Post by sToLp »

выдаёт сообщение без указания модификатора:

Code: Select all

╔══════════════════ CtrlShiftM ═══════════════════╗
║ проба определения шортката расширенной привязки ║
╟─────────────────────────────────────────────────╢
║                     { OK }                      ║
╚═════════════════════════════════════════════════╝
А если этот макрос ещё и удвоить, и запускать его через диалог выбора, то сообщение и вовсе становится таким:

Code: Select all

╔═══════════════════════ ☺ ═══════════════════════╗
║ проба определения шортката расширенной привязки ║
╟─────────────────────────────────────────────────╢
║                     { OK }                      ║
╚═════════════════════════════════════════════════╝
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

MacroLib — Far Macro Library

Post by John Doe »

Max Rusov wrote: Для поддержки нативных LUA макросов больше не нужен макрос-хелпер
А как плагин узнаёт о перезагрузке макросов?
Max Rusov wrote: Вызов сделал иначе, без eval
А проверяются ли флаги-условия?
И также надо помнить о EnableOutput и NoSendKeysToPlugins.
Max Rusov
Posts: 3651
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Has thanked: 2 times
Been thanked: 19 times

MacroLib — Far Macro Library

Post by Max Rusov »

sToLp wrote: ...отображающий не все макросы из набора. Так и должно быть?
Видимо, да. Одно нажатие не может попасть под все модификаторы, зачем бы они тогда были нужны?
sToLp wrote:макрос выдает сообщение без указания модификатора
Так и должно быть, я об этом сразу написал.
sToLp wrote: если этот макрос ещё и удвоить, и запускать его через диалог выбора, то сообщение и вовсе становится таким:
Это поправлю.
Max Rusov
Posts: 3651
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Has thanked: 2 times
Been thanked: 19 times

MacroLib — Far Macro Library

Post by Max Rusov »

John Doe wrote: А как плагин узнаёт о перезагрузке макросов?
Никак. При перезагрузке макросов FAR, надо вызвать перезагрузку макросов MacroLib. Пример макроса в комплекте.
John Doe wrote: А проверяются ли флаги-условия?
Нет, только condition. Надо добавить.
Max Rusov
Posts: 3651
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Has thanked: 2 times
Been thanked: 19 times

MacroLib — Far Macro Library

Post by Max Rusov »

Shmuel wrote: На Windows XP SP3 x86 при запуске Фара получаем многократное
У меня не воспроизводится. Если не затруднит - попробуйте отладочный Build. Перед запуском FAR запустите DBWinOle.exe, и пришлите лог с ошибкой.
Attachments
MacroLib_Deb.rar
(217.14 KiB) Downloaded 81 times
Shmuel
Posts: 6819
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 528 times

MacroLib — Far Macro Library

Post by Shmuel »

Max Rusov wrote: и пришлите лог с ошибкой.
Поставил ночную сборку 4276 с новым профилем. Создал 1 макрофайл с 1 макросом
Macro { area="Shell"; key="F1"; action=function() end; }
Вот репорт:

Code: Select all

"C:\fartest\Plugins\MacroLib\MacroLib.dll" (MacroLib, ver: 1.24)
(Addr: 40F00000, Delphi5 Frames Asserts Unicode)
ExecMacro: @"C:\fartest\Plugins\MacroLib\MacroLib.lua"
ExecMacro: if MacroLib then MacroLib.UpdateLuaMacros() end
Error at 40F0C36B, EExternal: External exception C0000005 at 40F0C36B
 : 40F057F5 : 40F05F87 : 40F06F0C : 40F01C25 : 00020000
Max Rusov
Posts: 3651
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Has thanked: 2 times
Been thanked: 19 times

MacroLib — Far Macro Library

Post by Max Rusov »

Понятно. Это потому что у нет ни одного *.fmlua макроса. Fixed.
User avatar
sToLp
Posts: 938
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 114 times
Been thanked: 12 times

MacroLib — Far Macro Library

Post by sToLp »

При наличии макроса с модификатором Press макросы с другими модификаторами либо совсем не работают, либо конфликтуют с ним (Single и Down) и, соответственно, вызываются только через диалог выбора. А хотелось бы, чтобы и другие макросы с модификаторами работали вкупе с Press. Сейчас мне особенно интересны макросы с Hold и с Double.

То, что такое в принципе возможно, показывает пример применения макроса MacroEx. После его установки возможно создать три lua-макроса на один шорткат: без модификатора, с Hold и с Double. И каждый из них будет работать. И это весьма удобно и полезно.
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

MacroLib — Far Macro Library

Post by John Doe »

Видимо баг, т.к. Press c Hold и Double должны прекрасно сочетаться.

Но какую цель вы преследуете назначая макросы одновременно на Single, Press и Down?
Чем вообще Single отличается от Press и Down?
Post Reply

Return to “Обсуждение плагинов”