IntelliJ Ideaでウィンドウのキー操作をEmacs風にする

Emacsでは以下のようなキー操作でwindowを縦に分割したり、横に分割したりできますね。

機能 キー ファンクション
縦に分割 C-x 2 split-window-vertically
横に分割 C-x 3 split-window-horizontally
分割をやめる C-x 1 delete-other-windows
windowを閉じる C-x 0 delete-window
次のwindowへ移動 C-x o other-window


intellijでKeymapをEmacsにすると、同等の機能には以下のようなキーが割り当てられます。

機能 キー 機能名
縦に分割 ⌃2 Window -> Editor Tabs -> Split Vertically
横に分割 ⌃3 Window -> Editor Tabs -> Split Horizontally
分割をやめる ⌃1 Window -> Editor Tabs -> Unsplit All
windowを閉じる ⌃0 Window -> Editor Tabs -> Unsplit
次のwindowへ移動 Window -> Editor Tabs -> Goto Next Splitter

ただUnsplitはemacsのdelete-windowとはちょっと違って、単純にカーソルがあるwindowを削除するわけじゃないみたいです。
ちょっと挙動が掴みづらいですが、最後にわかれたwindowを削除しているように見えます。

問題

このキー割り当てには問題があって「⌃1」「⌃2」「⌃3」「⌃4」などは効きませんでした。
macosxにキーのイベントが食われているんじゃないかと思います。

「⌃1」については「システム環境設定 -> キーボード -> キーボードショットカット」でMission Controlの「デスクトップ1にへ切り替え」に割り当ててあるので、これを外せば使えるようになります。

その他のキーについては割り当てが見つかりませんでした。


どうせ効きませんので、Intelli JのPreferences -> KeyMapで割り当てをEmacs風に変更しました。
Second Strokeにチェックをつければ、キーの組み合わせを登録できます。


機能 キー 機能名
縦に分割 ⌃X,2 Window -> Editor Tabs -> Split Vertically
横に分割 ⌃X,3 Window -> Editor Tabs -> Split Horizontally
分割をやめる ⌃X,1 Window -> Editor Tabs -> Unsplit All
windowを閉じる ⌃X,0 Window -> Editor Tabs -> Unsplit
次のwindowへ ⌃X,O Window -> Editor Tabs -> Goto Next Splitter


これでだいたいemacsを使う時と同じ感覚になりました。