3

Я хочу переназначить клавишу Caps Lock, чтобы отправить Ctrl+Alt+Shift, но я также хочу отправить любые клавиши, которые я нажал после нее.

Например, если я нажимаю Caps Lock+t, то я хочу, чтобы AHK отправил Ctrl+Alt+Shift+t аналогичным образом, если я нажимаю Caps Lock+j, то я хочу отправить Ctrl+Alt+Shift+j.

Следующее не работает, потому что оно отправляет его, прежде чем я нажимаю какие-либо завершающие клавиши. (Я делаю это, поэтому я могу сопоставить сочетания клавиш с Ctrl+Alt+Shift+[ключ] и использовать клавишу Caps Lock для их выполнения.

Capslock::send {^~+}

1 ответ1

7

Я посмотрел в файле справки AutoHotkey в разделе "Переназначение клавиш и кнопок". Общий шаблон a::b превратит нажатие клавиши в клавишу отправки b. Тем не менее, я не мог заставить что-либо из следующего работать правильно.

CapsLock::^!+
CapsLock::^!Shift
CapsLock::^!LShift

Но на той же странице справки описано, как AutoHotkey внутренне преобразует переназначение a::b в два отображения горячих клавиш. Я использовал этот пример для создания следующего рабочего скрипта.

*CapsLock::
  SetKeyDelay -1
  Send {Blind}{Ctrl DownTemp}{Alt DownTemp}{Shift DownTemp}
return

*CapsLock up::
  SetKeyDelay -1
  Send {Blind}{Ctrl Up}{Alt Up}{Shift Up}
return

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .