sublimeとmacを愛する僕がIntelliJをインストールした【keymap紹介】

IntelliJをインストールした時の各種設定を紹介していきます。前提としてぼくは 普段Sublime Textをこよなく愛していて、Macも大好き です。

Sublime Textで使っている設定を行っています。カーソル移動系はmac標準で動くものが多いです。普段はPHPを書いてます。

IntelliJを選択した理由

普段はPHPerですが、PHPだけでなくGolangなどにも手を出していきたい、その時に強力なIDE補完があると言語の習得がスムーズになるのではという狙いからです。

Code formatも特段意識することなく自動フォーマットがデフォルトで設定されていたりするので良いかなと思いました。

インストール時の設定

最初に色々プラグインをインストールするか?と聞かれたけどJavaはとりあえず使わないし、後で必要になったら入れようと思い、いらないものはどんどんチェックを外しました。

IntelliJでのkeymap設定

Keymapについては 「 Mac OS X 10.5+ 」を選択してカスタマイズしていきました。

カーソル移動系(with selection含む)

普段はemacsライクなカーソル移動でSublime Textを愛用しています。

ちなみに Macで特別keymapが設定されているアプリでなければこのカーソル移動系、削除系キーバインドはデフォルトで動きます。 なのでぼくは普段からどのアプリでもテキスト入力ではこのキーバインドが動くように設定します(MS wordとかでも設定します。)

// emacsライクなカーソル移動
「→」= "ctrl + f"
「←」= "ctrl + b"
「↓」= "ctrl + n"
「↑」= "ctrl + p"
「行頭へ(homeキー)」 = "ctrl + a"
「行末へ(Endキー)」 = "ctrl + e"

これに加えてshiftを押しつつ移動した場合選択されるようにしています。

// shiftで選択されるように
「shift + →」= "shift + ctrl + f"
「shift + ←」= "shift + ctrl + b"
「shift + ↓」= "shift + ctrl + n"
「shift + ↑」= 特に使わないのでなし
「shift + 行頭へ」 = "shift + ctrl + a"
「shift + 行末へ」 = "shift + ctrl + e"

削除系(back space、delete)

こちらもmacで普通に動くキーバインドです。IntelliJだとデフォルトでは動かないので設定しました。

「Delete」 = "ctrl + d"
「Back space」 = "ctrl + h"

単語削除

合わせて単語ごと削除するのを設定します。
「単語削除(Camelケースでも判断)」 = “ctrl + back space”

EditorDeleteToWordStartInDifferentHumpsMode

引用符や括弧で囲む

引用符(quote)や括弧(brace)で選択中の単語を囲むというケースがしばしばあるのでチェックを入れます。

// 使い方
echo hello;
↓helloの適当な箇所にカーソル置く、ctrl+gで選択、引用符で囲む
echo 'hello';

Surround selection on typing quote or brace

divタグなどで囲む(SurroundWithEmmet)

// 使い方
<p>hoge</p>

「これをfugaクラスのdivで囲いたい」
①<p>hoge</p>を選択
②ctrl+w
③入力".fuga"

完成↓
<div class="fuga">
    <p>hoge</p>
</div>

Surround with emmet

矩形選択(multi curet)

複数選択(multi curet)とか矩形選択(rectangular select)とか言うやつです。

ぼくは shift+alt+↓ つまり shift+alt+ctrl+n に当てています。
EditorCloneCaretBelow

Sublimeのcmd+dはどうしたらいいのか

IntelliJだと ctrl+g がほぼSublimeの command+d なんですが微妙に挙動が違います。

ぼくは下記の3つをよく組み合わせて使います。

  1. 矩形選択(Clone Caret Below “なし”)
  2. 次の同じ単語選択(Add Selection for Next Occurrence “ctrl+g”)
  3. 選択範囲拡大(Extend Selection “alt+↑”)

よくわからないと思いますし、ぼくがよく使う組み合わせみたいなのを画像にして貼っておきます。基本は ctrl+g とExtend Selection(IntelliJだと alt+↑ とか)の組み合わせでいけると思います。

矩形選択 基本

よく使うkeybind組み合わせ

まとめ

以上となります。基本的にはmacで使えるショートカットキーにこんなのあったら便利だなというのを自分で追加しています。

個人的に ⌘+d はかなり使いやすくて大好きですが、代わりに ctrl+gとExtend Selection command+d を設定することで代用できたかなと思います。