AHK で Ctrl の単押しを Esc にマップする (Windows)

タイトルの通り。

なんでそんなことしたいの

主に vim で使いたいので。

AutoHotKey (AHK) とは

キー押下をジャックして色々できるやつです。

典型的な用途はキーの入れ替えかと思いますが、本当に色々できるので詳しくは公式のドキュメントを読んでください。

使い方の概要

  1. インストールします。
  2. .ahk の拡張子でスクリプトを書きます。
  3. 2 のファイルをダブルクリックして起動すると常駐ソフトが起動しあれやこれやしてくれるようになります。ショートカットを作ってスタートアップフォルダに入れておくといいでしょう。

AHK で Ctrl の単押しを Esc にマップするスクリプト

スクリプトの文法については素晴らしい記事が既にたくさんありますので省略するものとして、ここには結論だけを残しておきます。

以下のスクリプトで左 Ctrl の単押しが Esc に置き換わります。ただし Ctrl + F1 は機能しなくなるので注意。

LControl & F1::return
LControl::Esc

なぜこれが動作するのかについては こちら

おまけ

無変換キー + hjkl で カーソル移動する

sc07B & h::Left
sc07B & j::Down
sc07B & k::Up
sc07B & l::Right

無変換キー + Space で 半角/全角 キーを送信する

sc07B & Space::sc029

CapsLock を左 Ctrl にあてる

……と vim が使いやすくなって最高ですが、AHK ではできません。レジストリを弄ってください。