Remap Caps Lock у Windows (управління * і * управління) [дублікат]


8

На це питання вже є відповідь тут:

Існує велика кількість утиліт, які перезаписують клавіші, але, здається, я не знаходжу дуже специфічної функції: я хочу, щоб блокування шапки виступало клавішею модифікатора управління, коли утримується, але як втеча, коли натискається самостійно.

Подібне запитання було поставлено тут , і одна з відповідей дала сценарій AutoHotkey, однак він чутливий до часу натискання клавіш і обробляє лише жорстко закодований список усіх можливих комбінацій керування + літер. Я вважаю за краще, якби він функціонував без примх, блокуючи натиснуті події кепки, зберігаючи будь-які інші натиснуті клавіші, поки клавіша блокування шапки ще не відпущений, а потім вирішує, чи надсилати втечу чи керування.

Чи є така проста утиліта або більш загальний сценарій AutoHotkey, який робить це?


FWIW, хоча мені також не подобається відповідь, яку я опублікував, я ніколи не відчував жодних проблем з цим на практиці, тому якщо відповідь нижче не працює для вас (як ви заявляєте в коментарях), варто спробувати , принаймні.
Багатий

Відповідь, яку ви опублікували на інше питання, також, здається, не працює з ключовими акордами. Зокрема, це, здається, працює лише з правильним зрушенням. Наприклад, я натискаю CapsLock + Shift + Tab і намагаюся отримати Ctrl + Shift + Tab. Натискання CapsLock + LShift + Tab, здається, взагалі нічого не створює, але CapsLock + RShift + Tab працює чудово.
раціоналіс

Не впевнений, що для вас йде не так, але CapsLock + LShift + Tab працює для мене. (наприклад, він успішно перемикає вкладки в зворотному порядку в Chrome.) Зараз я працюю в Windows 8.1, але я впевнений, що він працював і в Windows 7, і в Windows 8.
Багатий

Відповіді:


11

Цей скрипт реєструє один натискання CapsLockяк натиснення тривалістю менше 400 мс, змінюючи це значення за потребою.

*CapsLock::
    Send {Blind}{Ctrl Down}
    cDown := A_TickCount
Return

*CapsLock up::
    If ((A_TickCount-cDown)<400)  ; Modify press time as needed (milliseconds)
        Send {Blind}{Ctrl Up}{Esc}
    Else
        Send {Blind}{Ctrl Up}
Return

З певних причин він не працює належним чином при декількох натисканнях клавіш, наприклад, Ctrl + Shift + Tab або Ctrl + Alt + Del, хоча добре працює для двоклавішних комбо, таких як Ctrl-A або Ctrl-Tab.
раціоналіс

Я пропустив * перед першою гарячою клавішею CapsLock. Комбінації Ctrl + Shift працюватимуть зараз. Однак Ctrl + Alt + Del - це спеціальний ярлик, який неможливо надіслати від AutoHotkey.
Елліот ДеНольф

Зірочка, здається, не мала для мене жодної зміни.
racionalis

працює повністю чудово з комбінацією ctrl + shift. Дякую.
Майк HR
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.