Intellij 系 IDE で、Emacs キーバインドを使いたい! ideaVim で解決できます。
はじめに
こんにちは、皆さん、Emacs 使っていますか?
わたしは最近 Emacs にはまってます。
普段、仕事で使うのは AndroidStudio なので Emacs のキーバインドをそこでも使いたいなーと思っていました。
しかし、 Emacs のプラグインはあるにはあるのですが、、、個人的には合いませんでした。
例えば、 C-x u
これは Emacs の undo(戻る) なのですが、このような キーバインドの途中で一度手を離すようなキーバインドは実現できませんでした。それ以外にも色々と辛い部分がありました。
その反面、 ideaVim(Intellij 系 IDE の vim キーバインド用プラグイン) は Emacs のプラグインと比べて柔軟性がありました。
そこで、 ideaVim を使って Emacs のキーバインドを再現できないかと思いました。
さっそく手順
- AndroidStudio(他の Intellij 系 IDE も同様) で、 ideaVim をいれます。
-
Open ~/.ideavimrc
で、設定ファイルを開きます。
ideaVim をいれると、IDE の右下にV
というマークがでます。そこをクリックするとOpen ~/.ideavimrc
があります。
ここまできたら後は .ideavimrc
に書いていくだけです。
以下に基本的なキーバインドで書いたので、使ってください。
.ideavimrc
基本的には、常に insert mode のままタイピングします。
上記の .ideavimrc
は基本的なものだけですが、ほとんどのキーバインドは再現できるかと思います。
ここに書かれているのは、本当に基本的なものだけなので自身で好みにカスタムしていくと良いでしょう。
以下、簡単な補足説明です
inoremap <C-x>u <C-o>u
などにある、 <C-o>
というのは一時的に normal mode にはいるというものらしいです。
なので、このキーバインドの場合は 一時的に normal mode にはいって undo して insert mode に戻る という動きになります。
また、 :action {アクション名}
というのがありますが、これは Intellij Action
というもので、IDE の操作をコマンドで実行することができるものです。
これにより、 AndroidStudio の操作を ideaVim から実行することができます。
以下にアクションリストがあるので参考にしてみてください。(恐らく有志でまとめてくださっています。感謝)
以上のように、 ideaVim を使うことで AndroidStudio やその他の intellij IDE でも、 Emacs のキーバインドを再現することができます。
Discussion