Visual Studio 2019でカーソル移動だけをEmacsキーバインドにする方法を紹介します。Visual Studio に Emacsキーバインドのプラグインを入れたものの、コピペとか保存のショートカットまで上書きされて使いにくい、という人向けの記事です!
ctrlとcpas lockを入れ替える
昔はレジストリを書き換えるしか方法が無かったようですが、最近はCtrl2Capというマイクロソフト公式のツールが提供されているので、これを利用します。
次のサイトからCtrl2Capをダウンロードしてください。
docs.microsoft.com
ダウンロードできたら、適当なフォルダに解凍してください。インストール方法が少し変わっていて、コマンドプロンプトを使う必要があります。
画面下[ ここに入力して検索]に「cmd」と入力し、表示されたコマンドプロンプトのアイコンを右クリックし「管理者として実行」を選択してください。
コマンドプロンプトが開いたら、上でCtrl2Capを解凍したフォルダに移動し、次ののコマンドを実行してください。
ctrl2cap.exe /install
あとはPCを再起動すればCtrlキーとCaps Lockキーが入れ替わります。
Visual Studioのカーソル移動をEmacs風にする
Visual Studioのキーバインドを変更するにはメニューバーから「ツール」→「オプション」を選択します。
開いたオプションウインドウの左カラムから「環境」→「キーボード」を選択します。キーバインドを変更するには右カラムでコマンドを選択し、それに対応するショートカットキーを入力します。
まずは「Ctrl+B」でカーソルを1文字左移動するように設定してみましょう。「以下の文字列を含むコマンドを表示」の欄に「移動」と入力し、表示されるコマンドのなかから「編集.左に1文字移動」を選択してください。次にショートカット欄で「Ctrl+B」と入力して、割り当てボタンをクリックしてください。
上の画像で「現在使用されているショートカット」の欄に「ビルド.選択範囲のビルド」のコマンドが入っていますね。1つのショートカットに2つのコマンドは割り当てられないので、こちらのコマンドのショートカットは外しておく必要があります。
そこで、「以下の文字列を含むコマンドを表示」の欄に「選択範囲のビルド」と入力して、「選択したコマンドへのショートカット」の「削除」をクリックしてください。
同様の手順で次のEmacsコマンドとショートカットを指定すれば、Visual Studio 2019でもEmacs風のカーソル移動が出来るようになります。
コマンド名 | ショートカット | 削除するコマンド |
---|---|---|
編集.左に1文字移動 | Ctrl+B | ビルド選択範囲のビルド |
編集.右に1文字移動 | Ctrl+F | なし |
編集.行頭に移動 | Ctrl+A | なし |
編集.行末に移動 | Ctrl+E | InteractiveConsole.ExecuteInInteractive |
編集.1行下へ | Ctrl+N | 新規ファイル作成 |
編集.1行上へ | Ctrl+P | プリント |
編集.削除 | Ctrl+D |
まとめ
Visual Studio 2019でカーソル移動だけをEmacs風キーバインドにする方法を紹介しました。Emacs用のプラグインを入れるよりも自由にコントロールできるので便利です。