この記事ではWindowsでMacと同様のEmacs風キーバインドを使用する方法を説明します。
すなわち、Macで標準的に行える、Ctrl+DでDeleteしたりCtrl+Eで行末に飛ぶような操作をWindowsでもControlキーの代わりに CapsLockキーを使ってできるようにしてしまおうというお話です。
AutoHotkeyという各種操作にショートカットキーを割り当てることができるソフトを使用します。
残念ながらCapsLockキーを直接ショートカットキーに登録することはできないので、Change Keyというキー割り当てを変更するソフトを使用して、一旦CapsLockキーをF13キー(標準的なキーボードには存在しないキー)に割り当ててからAutoHotkeyにショートカット登録をしていきます。
私の使用環境、ソフトウェアバージョンは以下に記載の通りになります。AutoHotkeyは2022年にv2へバージョンアップしており、文法に変更がありました。
- Windows10
- Lhaplus v1.74
- Change Key v1.50
- AutoHotkey v2.0.2
1. 必要なソフトのインストール
Lhaplus
圧縮・解凍ソフトです。
Change Keyは圧縮ファイルでダウンロードされますがWindowsの初期状態では解凍できない形式のため、こちらのソフトを使用して解凍します。
「Lhaplus」定番の圧縮・解凍ソフト - 窓の杜
「窓の杜からダウンロード」をクリック。
インストール後に初期設定のウィンドウが開きますが、初期状態のままで問題ありません。
「解凍」にある「lzh」のチェックは外さないでおいてください。
Change Key
「Change Key」非常駐型でフリーのキー配置変更ソフト - 窓の杜
「窓の杜からダウンロード」をクリック。
ダウンロードできたらダウンロードフォルダの「ChgKey15.LZH」ファイルを解凍してください。(上記のLhaplusインストール後ならエクスプローラからダブルクリックで解凍できると思います。)
AutoHotkey
AutoHotkey
「Download」をクリック→「Download v2.0」をクリック
でダウンロードできます。
2. Change Key でのキー割り当て変更
以下の順でCapsLockキーをF13キーに割り当てます。
CapsLockキーを直接F13キーに割り当てようとするとうまくいかないことがあるようなので、Endキーへの割り当てを経由します。
- ChgKey15フォルダ内に展開された ChgKey.exe を管理者実行
- CapsLock をクリック
- End をクリック
- 「登録」タブの「現在の設定内容で登録します」をクリック
- 再起動
- 再び ChgKey.exe を管理者実行
- CapsLock の位置にある End をクリック
- 右上「Scan code」をクリック
- 0x「0064」を入力
- 「登録」タブの「現在の設定内容で登録します」をクリック
- 再起動
3. AutoHotkey でのショートカットキー割り当て
- AutoHotkeyのスクリプトを格納するフォルダで右クリック
- 「新規作成」
- 「AutoHotkey Script」
- ファイル名を入力して「Empty」をクリック
- 「Edit」をクリック
- テキストエディタで以下に記載のスクリプトを貼り付け
- 保存
- 作成した.ahkファイルをダブルクリックして実行
2回目以降は警告のポップアップが出ますが、「はい」をクリックすれば実行できます。
#Requires AutoHotkey v2.0 ;------------------------------------ ; Emacs キーバインド ;------------------------------------ F13 & b::Send "{Left}" ; ←移動 F13 & f::Send "{Right}" ; →移動 F13 & n::Send "{Down}" ; ↓移動 F13 & p::Send "{Up}" ; ↑移動 F13 & e::Send "{End}" ; 行末へ移動 F13 & a::Send "{Home}" ; 行頭へ移動 F13 & h::Send "{Backspace}" ; 左の1文字を削除 F13 & d::Send "{Delete}" ; 右の1文字を削除 F13 & k::Send "{Shift down}+{End}+{Shift up}+{Backspace}" ; 行末まで削除