たるこすの日記

たるこすの日記

リアルからバーチャルへ、バーチャルからリアルへ

Visual Studio Code で Emacs キーバインドを使う (2017/10/22)

はじめに

こんにちは、たるこすです。
今回は Visual Studio Code で Emacs キーバインドを使う方法についてです。

以前、以下の記事で「Emacs Keymap」をインストールすれば良いと書いたのですが、久しぶりに調べてみると状況が変わっていたので改めて記事を書きたいと思います。

Emacs Friendly Keymap のインストール

Emacs Keymap」は hiro-sun という方が作成された拡張機能ですが、リポジトリを見てみると 2016/11/10 で開発が止まっています。

そこで、「Emacs Keymap」をフォークしているリポジトリの更新状況を見てみます。 github.com

そうすると、こちらのリポジトリが活発に更新されているようです。 github.com

VSCode拡張機能でも「Emacs Friendly Keymap」という名前で提供されています。

Emacs Friendly Keymap」をインストールしたら、「Emacs Keymap」は無効化もしくはアンインストールしてしまいます。

Emacs Friendly Keymap」の説明を見ると、オリジナル (hiro-sun さんの Emacs Keymap) と比べて以下の変更があると書かれていました。

  • Copy, Cut, Yank で独自の Kill ring を使っていたものを、システムのクリップボードを使うように
  • C-x k でタブを閉じる, C-x C-k でタブをすべて閉じる
  • C-l でカーソルのラインを画面中央に
  • C-x C-f でファイルクイックオープン
  • Yank で選択範囲を上書き

そのほかにもいくつかのキーバインドが追加されているようです。

キーバインドの追加

Emacs Friendly Keymap」で設定されていないキーバインドがある場合、リポジトリに Pull Request を送るのが正攻法ですが少しハードルが高いです。そこで、キーボードショートカットの設定でキーバインドを追加してみます。

ファイル > 基本設定 > キーボードショートカット と選択することでキーボードショートカットのタブを開きます。

タブが開いたら keybindings.json のリンクをクリックします。

今回は、以下のように編集し、キーバインドを設定しました。

  • M-g で指定した行数への移動
  • C-x 0 で現在のタブグループを閉じる

おわりに

Emacs Friendly Keymap」は基本的な Emacs キーバインドはほとんど使えるようになっています。是非使ってみてください。