
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"
引用符や括弧で囲む
引用符(quote)や括弧(brace)で選択中の単語を囲むというケースがしばしばあるのでチェックを入れます。
// 使い方 echo hello; ↓helloの適当な箇所にカーソル置く、ctrl+gで選択、引用符で囲む echo 'hello';
divタグなどで囲む(SurroundWithEmmet)
// 使い方 <p>hoge</p> 「これをfugaクラスのdivで囲いたい」 ①<p>hoge</p>を選択 ②ctrl+w ③入力".fuga" 完成↓ <div class="fuga"> <p>hoge</p> </div>
矩形選択(multi curet)
複数選択(multi curet)とか矩形選択(rectangular select)とか言うやつです。
ぼくは shift+alt+↓
つまり shift+alt+ctrl+n
に当てています。
Sublimeのcmd+dはどうしたらいいのか
IntelliJだと ctrl+g
がほぼSublimeの command+d
なんですが微妙に挙動が違います。
ぼくは下記の3つをよく組み合わせて使います。
- 矩形選択(Clone Caret Below "なし")
- 次の同じ単語選択(Add Selection for Next Occurrence "ctrl+g")
- 選択範囲拡大(Extend Selection "alt+↑")
よくわからないと思いますし、ぼくがよく使う組み合わせみたいなのを画像にして貼っておきます。基本は ctrl+g
とExtend Selection(IntelliJだと alt+↑
とか)の組み合わせでいけると思います。
まとめ
以上となります。基本的にはmacで使えるショートカットキーにこんなのあったら便利だなというのを自分で追加しています。
個人的に ⌘+d
はかなり使いやすくて大好きですが、代わりに ctrl+g
とExtend Selection command+d
を設定することで代用できたかなと思います。