Сделать AutoHotKey игнорировать Alt как клавишу меню
Я пытаюсь использовать autohotkey для имитации элементов клавиатуры Mac на клавиатуре ПК (Windows). Моя мышечная память достигает ключевого слова Command для выполнения простых задач, таких как копирование и вставка, поэтому я хотел бы переделать комбинацию клавиш с левым Alt + буквой в соответствующую ctrl + letter.
<!c::Send ^c
В большинстве случаев он отлично работает, за исключением части времени в приложениях IE и Office. Когда вы нажимаете левый Alt, он нажимает на офисную ленту/меню (т.е. Строка меню отображается в IE, или появляются буквы ленты в Office 2010), а комбинация ctrl + letter не достигает адресата.
Я прочитал форумы AHK FAQ +, попробовал пару опций с UP и $модификаторами для горячей клавиши, но это не устранило проблему. Есть идеи?
Ответы
Ответ 1
Это не позволяет левой клавише Alt активировать панель меню для большинства приложений (под Windows 7 и AutoHotkey 1.1.11.01):
~LAlt Up:: return
Он не работает с Internet Explorer, но я все равно не использую IE.:)
Кстати, я также убил раздражающее всплывающее меню с помощью:
~LWin Up:: return
~RWin Up:: return
Ответ 2
Использование
LAlt::LCtrl
поместите его в файл ahk, скомпилируйте его и запустите .exe с правами администратора
щелкните правой кнопкой мыши → Запуск от имени администратора
Я тестировал его на Windows 7, и он работает, LAlt больше не срабатывает нигде и полностью заменяется на LCtrl.
Ответ 3
Просто проверил это на Win-7, и он работает даже с IE.
00 00 00 00 00 00 00 00 03 00 00 00 1d 00 38 00 38 00 1d 00 00 00 00 00 00
Вот текст SwapCtrlAlt.reg.
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,00,1d,00,38,00,38,00,1d,00,\
00,00,00,00,00
Ответ 4
Похоже, вам нужен модификатор подстановки. Это сделает так, если ваша горячая клавиша нажата в сочетании с другой клавишей. Отображение все еще работает. Попробуйте следующее:
*LAlt::LCtrl
Это сделает Alt огонь Ctrl для любой комбинации Alt +.
Ответ 5
Использование
LAlt::LCtrl
это заменит LAlt
на LCtrl
Ответ 6
вы также можете поменять две кнопки.
Что-то вроде:
LAlt::LCtrl
LCtrl::LAlt
В ограниченном тестировании, который я сделал, он работает, но вам, возможно, придется переустановить некоторые из ваших клавиш быстрого доступа к окну. Он в основном просто меняет две кнопки.
Ответ 7
Я боюсь, что IE ведет себя иначе, чем большинство других приложений.
Вы можете попробовать следующие инструкции. Это НЕ autoHotKey, но изменения regedit.
B.t.w. Я проверил, будет ли ScanCodes работать (SC38 для LAlt), но IE все еще игнорирует это.
Не уверен, что это работает в Vista/Win7/8, но стоит посмотреть.
http://www.designcodeexecute.com/2006/11/04/swap-alt-and-ctrl-keys-in-windows-xp/