Windowsで(Macのような)Emacs風キー操作を使用する【AutoHotkey】

この記事ではWindowsMacと同様の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 でのショートカットキー割り当て

 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}"	; 行末まで削除



4. 設定を維持する

そのままではPCを起動する度に.ahkファイルを実行する必要があるため、起動時に自動実行するように設定します。

  • エクスプローラで.ahkファイルを右クリック → ショートカットの作成
  • Windowsキー + R で「ファイルを指定して実行」を開く
  • shell:startup → OK でスタートアップフォルダを開く
  • .ahkのショートカットファイルをスタートアップフォルダに移動する
  • 再起動