Як використовувати Caps Lock як клавішу-модифікатор у Windows

Клавіша Caps Lock займає головне місце на клавіатурі, і вона не тягне своєї ваги. Цей простий скрипт AutoHotkey перетворить Caps Lock на клавішу-модифікатор, щоб ви могли використовувати її для настроюваних ярликів.

Основи

Цей сценарій дозволить вам натиснути Caps Lock+G, щоб швидко ввести текст Google із будь-якої точки Windows, або натиснути Caps Lock+D, щоб знайти визначення слова у словнику. Ці ярлики, звичайно, можна налаштувати.

Найкраще те, що цей розумний скрипт все ще дозволяє використовувати Caps Lock як зазвичай. Ви можете вмикати та вимикати Caps Lock, швидко натиснувши його двічі. Якщо ви цього не зробите, Caps Lock буде функціонувати як клавіша-модифікатор для ярликів.

AutoHotkey 101

AutoHotkey — це безкоштовна програма для Windows, яка працює у фоновому режимі та запускає сценарії. Ви можете написати ці скрипти самостійно або завантажити їх. Скрипти зазвичай чекають натискання клавіші та виконують дію. Таким чином, AutoHotkey — це швидкий спосіб переназначити ключі в Windows або призначити різні дії для клавіш.

Наприклад, ми показали, як ви можете використовувати AutoHotkey, щоб вимкнути клавішу Windows, не даючи їй відкрити меню «Пуск» і виходити з повноекранних комп’ютерних ігор. Не потрібно знімати клавіатуру з клавіатури.

Встановіть AutoHotkey та отримайте скрипт

Завантажте AutoHotkey і встановіть його для початку. Далі завантажте скрипт CapsLock Modifier.

  Посібник для початківців до AwesomeWM Windows Manager

Витягніть файл сценарію AHK з файлу архіву ZIP і помістіть його в будь-яку папку на вашому комп’ютері. Щоб запустити його за допомогою AutoHotkey, клацніть скрипт правою кнопкою миші та виберіть «Запустити сценарій».

Тепер сценарій працює у фоновому режимі. Щоб увімкнути або вимкнути Caps Lock, швидко двічі торкніться клавіші Caps Lock.

Якщо ви не натискаєте двічі, Caps Lock функціонує лише як клавіша-модифікатор. Завдяки функціям, вбудованим у сценарій, ви можете використовувати такі ярлики в будь-якому місці Windows:

Натисніть Caps Lock + d, щоб знайти словникове визначення вибраного слова.
Натисніть Caps Lock + g, щоб знайти в Google вибраний текст у будь-якому місці Windows.
Натисніть Caps Lock + t, щоб знайти вибране слово в тезаурусі.
Натисніть Caps Lock + w, щоб знайти вибраний текст у Вікіпедії.

Хочете більше ярликів? Ви можете створити свій власний, трохи знаючи скрипти AutoHotkey.

Щоб керувати AutoHotkey, знайдіть значок AutoHotkey у вашій області сповіщень — він має зелений фон з білим H. Щоб припинити виконання сценарію, просто клацніть правою кнопкою миші піктограму AutoHotkey і виберіть «Вийти».

Як це працює?

Якщо ви хочете побачити, що робить сценарій, клацніть його правою кнопкою миші та виберіть «Редагувати сценарій». Це відкриє скрипт у Блокноті, і ви зможете переглянути його код. Сценарій досить короткий і зрозумілий. Ми рекомендуємо не завантажувати та не запускати дивні сценарії, не подивившись на них і не зрозумівши їх.

  Як встановити ліміт часу для локальних облікових записів у Windows 10

Цей сценарій надіслав нам Дейв Келлог. Ось магічна частина сценарію, завдяки якій Caps Lock функціонує як клавіша-модифікатор, якщо її натиснути двічі:

CapsLock::
KeyWait, CapsLock ; Wait forever until Capslock is released.
KeyWait, CapsLock, D T0.2 ; ErrorLevel = 1 if CapsLock not down within 0.2 seconds.
if ((ErrorLevel = 0) && (A_PriorKey = "CapsLock") ) ; Is a double tap on CapsLock?
{
SetCapsLockState, % GetKeyState("CapsLock","T") ? "Off" : "On" ; Toggle the state of CapsLock LED
}
return

Цей біт чекає, щоб побачити, чи двічі натиснуто Caps Lock, і вмикає або вимикає Caps Lock. В іншому випадку сценарій захоплює Caps Lock і використовує його для ярликів модифікаторів.

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

Хочете переглянути повний сценарій, не завантажуючи його? Ось:

#NoEnv                      ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn                     ; Enable warnings to assist with detecting common errors.
#SingleInstance FORCE       ; Skip invocation dialog box and silently replace previously executing instance of this script.
SendMode Input              ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.


;================================================================================================
;  CapsLock processing.  Must double tap CapsLock to toggle CapsLock mode on or off.
;================================================================================================
; Must double tap CapsLock to toggle CapsLock mode on or off.
CapsLock::
    KeyWait, CapsLock                                                   ; Wait forever until Capslock is released.
    KeyWait, CapsLock, D T0.2                                           ; ErrorLevel = 1 if CapsLock not down within 0.2 seconds.
    if ((ErrorLevel = 0) && (A_PriorKey = "CapsLock") )                 ; Is a double tap on CapsLock?
        {
        SetCapsLockState, % GetKeyState("CapsLock","T") ? "Off" : "On"  ; Toggle the state of CapsLock LED
        }
return



;================================================================================================
; Hot keys with CapsLock modifier.  See https://autohotkey.com/docs/Hotkeys.htm#combo
;================================================================================================
; Get DEFINITION of selected word.    
CapsLock & d::
    ClipboardGet()
    Run, http://www.google.com/search?q=define+%clipboard%     ; Launch with contents of clipboard
    ClipboardRestore()
Return

; GOOGLE the selected text.
CapsLock & g::
    ClipboardGet()
    Run, http://www.google.com/search?q=%clipboard%             ; Launch with contents of clipboard
    ClipboardRestore()
Return

; Do THESAURUS of selected word
CapsLock & t::
    ClipboardGet()
    Run http://www.thesaurus.com/browse/%Clipboard%             ; Launch with contents of clipboard
    ClipboardRestore()
Return

; Do WIKIPEDIA of selected word
CapsLock & w::
    ClipboardGet()
    Run, https://en.wikipedia.org/wiki/%clipboard%              ; Launch with contents of clipboard
    ClipboardRestore()
Return

;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++

;================================================================================================
; Clipboard helper functions.
;================================================================================================
ClipboardGet()
{
    OldClipboard:= ClipboardAll                         ;Save existing clipboard.
    Clipboard:= ""
    Send, ^c                                            ;Copy selected test to clipboard
    ClipWait 0
    If ErrorLevel
        {
        MsgBox, No Text Selected!
        Return
        }
}


ClipboardRestore()
{
    Clipboard:= OldClipboard
}

Раніше ми бачили сценарії AutoHotkey, які перетворюють Caps Lock на клавішу-модифікатор, але ніколи не включали Caps Lock як перемикач, якщо ви його двічі натискаєте. Це дуже розумно. Ще раз дякуємо Дейву Келлогу за те, що він надіслав його нам.

  Як знайти MAC-адресу Bluetooth у Windows 10