今までコードを書く際にはVimを使っていたが、いい加減老害感が出てきたのと、気分転換を兼ねてエディタを乗り換えた。
結論から言うと、メインはAtomにしてサブエディタとしてIntelliJ Ultimate(+ Language Plugin)を使うようにした。
Atomに乗り換えて1〜2ヶ月ほど経ち、ひとまず落ち着いたので記事にすることにした。
Vimから乗り換える必要があるか論
個人的にはバグが無く生産性が高いものを作れるなら、VimでもEmacsでもメモ帳でもIDEでも何でも好きなもので書けば良いのではという意見。
なぜ自分がVimから乗り換えたかと言われれば、冒頭にも書いた気分転換もあるが、自分のVim力に限界を感じたのが原因だった。
自分のVim力の限界
きっかけはNeobundle.vimから、dein.vimに乗り換える事だった。
ShougoさんのNeobundleには大変お世話になっており、dein.vimの紹介記事が出た際に乗り換えようとした際になぜかVimの起動が遅くなってしまった。
まあ、またかとvim hoge.txt --startuptime
を使って原因を探す事や、dein.vimの新しい構文を覚えるのが面倒だなぁと思ってしまった。
Vim力が高い人であればソースコードを飛んでパパっと調べることが出来たりする事ができたと思うが、
個人的にはVimScriptは覚える気がないので毎回この手のトラブルのたびにVimScriptの文法を調べることが面倒になってしまった。
覚えれば解決するのではという気もするが、VimScriptかぁ・・・という謎の嫌悪感があるのと、
今までは業務で書いているコードはPHPやPythonの様なLLからJava・C#等の本来IDEで書いた方がメリットが高い言語でもVimで書いていたが、
仕事でJetBrains製品をオススメされ、実際に使ってみた結果もうそこまでVimに労力をかけなくても良いかなぁと思ってしまったという事も大きい。
メインのエディタとしての選択肢
ということで試しに乗り換えてみるかーぐらいの気軽な気持ちで色々と選択肢を漁ってみた。
条件としては主に下記。
- VimKeyBindが使える。
- もう8年ほどはVimKeyBindで過ごしてきたので今更変えると移行コストが辛い。
- Pluginで拡張が出来る。
- Vimで色々とカスタマイズをしているので近しいことが出来ないのは辛い。
というわけで調べてみた。(個人の感想です。
Eclips
- 重い。ただただ重い。
- 過去に使っていて苦い思い出が・・・。
- 昔はIDEといえばEclipsだった感があるが、最近はAndroid StudioよろしくJetBrainsが台頭している感があるし、Eclipsは良いかなと判断。
Visual Studio Code
IntelliJ Ultimate(+ Language Plugin)
- もはや説明する必要は無いだろうがほぼ何もカスタマイズしなくても使い勝手はかなり良い。
- LLでもかなりのコード補完が聞くし、とにかく賢い。
- Pluginもボチボチある。
- あえてケチを付けるなら
- 有料かつOSSでは無いので何かあったときに原因を特定し辛い。
- 細かなカスタマイズがやり辛いのがイマイチといえばイマイチ。
と他にも調べたが省略。
選択
もはや面倒になってJetBrainsで良いかなぁと思ったが、下記の理由でメインにするのは止めて、詳細なコードレビューやリファクタリングの時だけ使うようにした。
- カスタマイズがし辛い
- 他端末への設定の共有
- GithubでDotfilesを管理しているので、それで共有出来る仕組みが無いのは辛い。
- Dotfilesで共有出来るのであればぜひ教えてもらいたい。
- GithubでDotfilesを管理しているので、それで共有出来る仕組みが無いのは辛い。
というわけで下記の2つに絞った。
- Atom
- Visual Studio Code
どっちもElectron製でなおかつ各種カスタマイズも出来るしで悩んだが、心象の差でAtomにした。
とはいえMSに対する心象も過去よりは良くなっているので本当に微妙な差ではあった。
Atomはコードを書くとき・レビュー時などのメイン作業。
IntelliJ Ultimate(+ Language Plugin)は詳細なコードレビューやリファクタリングの時だけ使うようにした。
詳細なコードレビューやリファクタリングの為に金を掛けるのかという意見もあるかもしれないが、
金で良いプロダクトを作れるのであればいくらでも払って構わないかなという気持ちはある。
冒頭にも書いたが1〜2ヶ月ほどこのスタイルで進めてみてうまく行っているのでまあまあ良かったのではと思っている。
Atom Pluginの紹介しろという意見があるかもしれないので紹介しておくとお使いのブラウザから、(ctrl | ⌘) + l -> Atom プラグイン と打つと出てきます。
けつろん
自分の責任で好きなことを好きなもので作れ。