Макросы, упрощающие работу с клавишами-цифрами NumPad`а.

Здесь обсуждается всё, что касается макросов.
Post Reply
User avatar
sToLp
Posts: 766
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 57 times
Been thanked: 5 times

Макросы, упрощающие работу с клавишами-цифрами NumPad`а.

Post by sToLp » Wed 04 Oct, 2017 22:15

Множество вариантов результатов нажатий клавиш с нампадовскими цифрами самих по себе, а тем более в сочетаниях с модификаторами, запомнить сложно. А вот запутаться в них легко. Поскольку они зависят от нескольких моментов:

– горит или погашен индикатор NumLock;

– применён ли модификтор Alt (независимо от NumLock);

– применены ли модификторы AltShift (при горящем NumLock);

– применён ли модификтор Shift (сам по себе и с другими модификаторами);

– применены ли модификторы Ctrl или CtrlAlt;

– применена ли клавиша с цифрой 5;

– применена ли системная комбинация "из трёх пальцев" CtrlAltNumDel.

Подробнее об этом см. в теме "Об опознавании клавиш-цифр нампада командой mf.waitkey(0,1)".

Для некоторого упрощения работы с ними предлагается применить следующие макросы.

Клавиши-цифры нампада нажатые — независимо от NumLock выводят в комстроку соответствующие цифры (как одиночные нажатия при горящем NumLock).

Нажатые — независимо от NumLock производят навигационные действия (как одиночные нажатия при погашенном NumLock).
Attachments
дваМакроса.7z
(1.03 KiB) Downloaded 4 times
Last edited by sToLp on Thu 05 Oct, 2017 18:45, edited 1 time in total.

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

Макросы, упрощающие работу с клавишами-цифрами NumPad`а.

Post by John Doe » Thu 05 Oct, 2017 07:57

Ликбез по Lua.
1. exit() лишнее.
2. Есть такая конструкция:

Code: Select all

if cakeys=="CtrlAltNum1" then
  Keys("End")
elseif cakeys=="CtrlAltNum2" then
  Keys("Down")
elseif cakeys=="CtrlAltNum3" then
  Keys("PgDn")
--...
else
--...  
end
3. Но лучше решать подобные задачи таблицей.

Code: Select all

local num = {
  CtrlAltNum1 = "End",
  CtrlAltNum2 = "Down",
  CtrlAltNum3 = "PgDn",
  --...
}
--..
Keys(num[cakeys])

User avatar
sToLp
Posts: 766
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 57 times
Been thanked: 5 times

Макросы, упрощающие работу с клавишами-цифрами NumPad`а.

Post by sToLp » Thu 05 Oct, 2017 18:40

John Doe wrote:
Thu 05 Oct, 2017 07:57
Ликбез по Lua.
1. exit() лишнее.
2. Есть такая конструкция: ...
3. Но лучше решать подобные задачи таблицей. ...
Большое спасибо за полезные наставления! Макросы поправлю.

И ещё бы надо сделать макрос для замены нативной команды Ctrl-Numpad5 — "Восстановить ширину панелей по умолчанию", перехватываемой одним из сабжевых макросов. Пока что ни как не могу заставить нормально работать макрос с ключами CtrlShiftNum5 и CtrlShiftClear. Продолжаю с ними упражняться.

User avatar
sToLp
Posts: 766
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 57 times
Been thanked: 5 times

Макросы, упрощающие работу с клавишами-цифрами NumPad`а.

Post by sToLp » Sat 21 Oct, 2017 17:10

Поупражнявшись с вариантами макросов, упрощающих работу с нампадовскими цифрами, пришёл к выводу о целесообразности несколько иного подхода. Поэтому сделал, опробовал и закрепил в своей коллекции три макроса, реализующие следующее.

Первый макрос обеспечивает по нажатию на вывод цифр, независимо от состояния NumLock`а.

Второй — по нажатию шорткатов производит навигационные действия (соответствующие клавишам End, Down, PgDn, Left, CtrlNum5/CtrlClear, Right, Home, Up, PgUp, Ins).

Третий макрос , запускающего нативную команду просмотра файла или размера папки, находящихся под курсором.
Attachments
[.{.num#_выводЦифрИнавигацияКлавишамиНампадаНезависимоОтNumLock(sToLp)com.lua
Три макроса.
(2.44 KiB) Not downloaded yet

Post Reply

Return to “Обсуждение макросов”