こんにちは、河野です。
Vimを使っているとESCキーを良く使いますが、長時間作業をしていると左手の小指が痛くなります。3年前頃まで、地味な痛みに耐えていたのですが、キーの配置を換えることで解消できました。
ついでに他のキーも変更したところ、かなり快適な環境ができましたので、今回はその設定を共有します!
AutoHotKeyでカスタマイズ
Vimだけでなく、全般的に使えるように設定しておいた方が楽なので、専用のソフトを使用します。
使用するソフトはAutoHotKeyです。色々とキー配置をカスタマイズするソフトはありますが、個人的にはこのソフトが一番融通が利くかなと思います。
公式:AutoHotKey
日本語情報:AutoHotkeyを流行らせるページ
AutoHotKeyの設定内容
以下、AutoHotKeyの設定ファイルになります。
- 右下のバックスラッシュ → アンダースコア
Shiftキーを押さずにアンダースコアが入力できるので楽です。バックスラッシュは、バックスペース横のキーを使用して入力しています。 - 無変換 → エスケープ
本題のESCキーですが、無変換キーに割り当てました。親指で押せるし、左の小指がかなり楽になりました。 - 変換 → リターン
ESCキーを無変換に割り当ててみたのですが、かなり楽だったので、リターンキーも配置を変更しました。右の小指が楽になりました。 - ひらがな/カタカナ → バックスペース
これもリターンキーと同時に設定してみました。変換キーの幅が短いキーボードでないと親指をかなり内側に曲げないといけないので、使いにくいかも知れません。 - PuTTYを使っている時は、EscでIMEもオフにする
gvimではインサートモードからコマンドモードに切り替わったときに、IMEをオフにする機能があります。これはSSH上でVimを使っている時には実現できないため、代わりにAutoHotKeyで制御することにしました。 - キーの長押し間隔を長めに
AutoHotKeyでは変換したキーを長押ししすぎると、Intervalを長くしろというエラーメッセージが出て反応しなくなります。デフォルト値は70程度だったと思います。バックスペースを設定してからエラーが出るようになったので、設定しました。
私はHappy Hacking Keyboardを使っているので、変更していないのですが、Capsロックをコントロールにするというのも良くありますね。
CapsLockキーにCtrlキーの仕事をさせる - もぎゃろぐ
AutoHotKeyはもっと細かい制御が出来るので、無変換+英字 → Ctrl+英字 みたいな変更もできるのですが、タイプミスした時に影響が大きいのでやめました。
慣れるまで変な感じがするんですが、慣れてしまうと大変便利ですので、ぜひ皆さんもキーカスタマイズしてください!