\r\n\r\n
Caps-Lockキーがメインキーボードのスペースを占拠してしまい、機能しない。このシンプルな自動ホットキースクリプトは、Caps Lockをモディファイアキーに変え、ショートカットのカスタマイズに使用できるようにします。
このスクリプトは、Caps Lock+Gを押すとWindowsのどこからでも素早くテキストを検索でき、Caps Lock+Dを押すと単語の辞書的な定義を検索できるようにします。もちろん、これらのショートカットはカスタマイズ可能です。
この巧妙なスクリプトでは、Caps Lockを通常通り使用することができ、素早く2回押すことでオン・オフが可能です。そうしないと、Caps Lockはショートカットの修飾キーとして使用されます。
AutoHotkeyは、バックグラウンドで動作し、スクリプトを実行する無料のWindowsアプリケーションです。これらのスクリプトは、自分で書くこともできますし、ダウンロードすることもできます。スクリプトは通常、キーが押されるのを待ち、アクションを実行する。このように、「AutoHotkey」は、ウィンドウ内のキーのリマップや、キーに異なるアクションを割り当てることができる、手軽なツールです。
例えば、AutoHotkeyを使ってWindowsキーを無効化し、スタートメニューが開くのを防いだり、フルスクリーンのPCゲームから抜け出したりする方法を紹介します。キーボードのキーキャップをこじ開ける必要がありません。
AutoHotkeyをダウンロードし、インストールを開始します。次に、CapsLockモディファイアスクリプトをダウンロードします。
ZIPアーカイブファイルからAHKスクリプトファイルを解凍し、コンピュータ上の任意のフォルダに配置します。自動ホットキーで実行するには、スクリプトを右クリックして、"スクリプトの実行 "を選択します。
Caps Lockのオン/オフを切り替えるには、Caps Lockキーを素早くダブルクリックします。
ダブルクリックしない場合は、Caps Lockは修飾キーとしてのみ機能します。スクリプトの組み込み関数を使えば、Windowsのどこでも以下のショートカットを使うことができます。
さらに多くのショートカットが必要な場合は、自動化されたホットキースクリプトを作成することができます。
Auto Hotkeysを制御するには、通知領域にある緑色の背景に白色のHが付いた "Auto Hotkeys "アイコンを探します。
関連:自動ホットキースクリプトの書き方
スクリプトの動作を確認したい場合は、スクリプトを右クリックして、「スクリプトの編集」を選択します。これでメモ帳でスクリプトが開き、そのコードを調べることができます。スクリプトは非常に短く、理解しやすい。変なスクリプトをダウンロードして実行するのではなく、まずは見て理解することをお勧めします。
このスクリプトは、Dave Kellogg氏から送られてきたものです。ここでは、Caps Lockを2回押すとモディファイアキーとして動作するようにする魔法のスクリプトの部分を紹介します。
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 } returnCaps Lockが2回押されるのを待ち、Caps LockをOnまたはOffに設定します。そうでない場合は、スクリプトが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 c***istent 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.*********.org/wiki/%clipboard% ; Launch with contents of clipboard ClipboardRestore() Return ;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ;================================================================================================ ; Clipboard helper functi***. ;================================================================================================ 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 }Caps Lockをモディファイアキーに変換する自動ホットキースクリプトは以前にもありましたが、Caps Lockをトグルキーとして(ダブルクリックした場合)保持するものはありませんでした。とても賢いですね。送ってくれたDave Kelloggに改めて感謝します。