MacroEx — запуск макросов нетрадиционными способами

Здесь выкладываются готовые к использованию макросы и скрипты.
User avatar
John Doe
Бюрократ
Posts: 12457
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 188 times

MacroEx — запуск макросов нетрадиционными способами

Post by John Doe » Sun 20 Jul, 2014 00:42

Есть полезнейшая возможность в MacroLib — запуск макросов удержанием, двойным нажатием, и др.
Хорошо бы подобное и в родные макросы (тикет на мантисе есть).

А пока попробуем приблизится к решению задачи имеющимися средствами.

Предлагаю скрипт MacroEx, расширяющий возможности запуска макросов следующим образом:
  1. В имени клавиши через двоеточие теперь можно указывать дополнительные модификаторы Hold и Double:
    • key:Double — макрос будет выполнен при двукратном нажатии клавиши (в течении 300 мс, не отпуская клавиши-модификаторы)
    • key:Hold — макрос будет выполнен при удержании (>300 мс)
      Пример:
  2. Поддерживаются последовательности из двух нажатий, перечисленные через "-":
    • key-key2 — макрос будет выполнен при нажатии последовательности клавиш.
      Последовательность следует нажимать так: .
      Если вторая клавиша последовательности в течении секунды не будет нажата, то появится подсказка: из описаний возможных макросов.
      Пример:
    На один и тот же key можно назначить произвольное число макросов, конфликты разрешаются по правилам, принятым в LuaMacro.
    Макросы с модификаторами не лишают указанную комбинацию исходного значения: короткое нажатие выполнит исходное действие (или макрос, если назначен).
Ограничения:
  • В качестве key поддерживаются только комбинации клавиш с модификаторами Ctrl/Alt/Shift.
Установка: достаточно расположить прилагаемый macroEx.lua где-либо в scripts.
Attachments
macroEx-3.2.7z
(3.69 KiB) Downloaded 211 times

User avatar
sToLp
Posts: 938
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 107 times
Been thanked: 8 times

MacroEx — запуск макросов нетрадиционными способами

Post by sToLp » Fri 22 Jul, 2016 15:15

Latest post of the previous page:

John Doe wrote: фар сейчас не запускает макрос на Alt при нажатом Ctrl
Поупражнявшись с макросами, назначенными на двойное нажатие на Ctrl, Alt и Shift , убедился в удобстве этой возможности. Поэтому весьма желательно, чтобы макросы и на двойное нажатие на CtrlAlt, CtrlShift и AltShift тоже появились бы.

User avatar
John Doe
Бюрократ
Posts: 12457
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 188 times

MacroEx — запуск макросов нетрадиционными способами

Post by John Doe » Fri 22 Jul, 2016 15:41

sToLp wrote: Поэтому весьма желательно,
Увы.
Прямой возможности никогда не было.
Обходная была, но убрали.

На мантисе есть http://bugs.farmanager.com/view.php?id=2857

Продолжение: http://forum.farmanager.com/viewtopic.p ... 42#p139642

User avatar
John Doe
Бюрократ
Posts: 12457
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 188 times

MacroEx — запуск макросов нетрадиционными способами

Post by John Doe » Mon 29 Aug, 2016 14:54

Версия 3.2 в шапке
  • Поддержка комбинаций из нескольких модификаторов, например CtrlAlt:Double.
    Также работают и последовательности, например CtrlAlt-F8, CtrlF8-Alt.
    CtrlAlt:Hold тут в принципе смысла не имеет, поскольку с модификаторами событие происходит при отпускании.
    Но даже Hold сейчас работает, хоть и со спецификой: нажимать надо дважды, как Double, но в конце клавишу не отпускать, а продолжать удерживать.
  • Поддержка ScriptsBrowser.
    Помимо прочего, некоторые параметры (бывшие ранее константами в коде) сейчас доступны для изменения:
    Изменения могут применяться немедленно (временно), или оставаться постоянного, при использовании пользовательских настроек в scriptcfg

buniak_a_h
Posts: 1101
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 82 times
Been thanked: 36 times
Contact:

MacroEx — запуск макросов нетрадиционными способами

Post by buniak_a_h » Fri 27 Apr, 2018 02:10

John Doe, правильно ли я понимаю, что этот скрипт не поддерживает ключи, описанные регэкспами?

Пример (из Вашего ме скрипта Ctrl-K-blocks.lua):
key="CtrlK-1 CtrlK-2 CtrlK-3 CtrlK-4 CtrlK-5 CtrlK-6 CtrlK-7 CtrlK-8 CtrlK-9 CtrlK-0";
Я попробовал заменить на
key="/[LR]CtrlK-[0-9]/";
а также на
key="/[LR]CtrlK-\d/";
Не работает... :-(
Вставка "%" и "\" перед дефисом положения не исправляет...
Кстати, в этом описании регэкспы имеются в виду в стандарте lua (escape-символ - %) или в стандарте PCRE (escape-символ - \)?

User avatar
John Doe
Бюрократ
Posts: 12457
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 188 times

MacroEx — запуск макросов нетрадиционными способами

Post by John Doe » Fri 27 Apr, 2018 07:49

buniak_a_h wrote:
Fri 27 Apr, 2018 02:10
правильно ли я понимаю, что этот скрипт не поддерживает ключи, описанные регэкспами?
Вероятно, мне этого не требовалось.
buniak_a_h wrote:
Fri 27 Apr, 2018 02:10
Кстати, в этом описании регэкспы имеются в виду в стандарте lua (escape-символ - %) или в стандарте PCRE (escape-символ - \)?
PCRE (почти).

Post Reply

Return to “Полезные макросы и скрипты”