読者です 読者をやめる 読者になる 読者になる

arveltのソフトウェア技術メモ

Arvelt's software technology memo

vimを快適にするまとめ

vim

vimを快適にするためにやったことのまとめです。主にプログラマ方面。


vimで開発するとかっこいいです。私もかっこよくなりたいのでvim使ってみようと思いました。
さあ使おうとしてもわけがわからず、色々調べたりしました。
最終的にはvimrcをgithubに登録し、どの端末でもOSでもすぐに使えるようにしました。

https://github.com/arvelt/dotfiles

そのときの考え方や参考サイトをメモっていきます。


1.vim入門
vimって初めて聞いたくらいの人の場合はまず基本操作。


vimcui環境で使用されるテキストエディタです。viのすごいやつです。
サーバーの設定ファイル書き換えたりするときに使うあのviです。
今はgui版もあります。詳しくはwikipediaへ。
そして操作に癖があります。起動したはいいが文字入力できない。カーソルは移動しない。あまつさえ終了できないなんてことになりがちです。
基本操作を確認しましょう。起動、移動、終了を抑えます。

Vimの使い方
http://www15.ocn.ne.jp/~tusr/vim/vim_text0.html
Curiosity Drives Me: 今年こそ始める!何度も挫折した人のためのモダンVim再入門
http://www.curiosity-drives.me/2012/01/rails.html


2.開発の環境として
vimは素の状態では非力です。これは色々とカスタマイズして使うべきものです。足りない機能はプラグインで補うものです。


私が考える開発環境としては必要要素は3つ。
・プロジェクトやディレクトリの構造を表示できること。
プログラミング言語等の入力補完が行えること。(型が意識されること)
・定義済みクラスやメソッドへのジャンプ。
今のIDEならば当たり前に搭載されるべき機能です。これらを満たすためにプラグインを使用していきます。
特にこのへんは凝りだすときりがないのでほどほどにしましょう。

Vimを最強のPython開発環境にする2
http://lambdalisue.hatenablog.com/entry/2013/06/23/071344
Vimを使い始めようと思うんですけど、おすすめを教えてください」 - ぼっち勉強会
http://kannokanno.hatenablog.com/entry/20121217/1355694191


3.モード移動変更時のストレスをなくす
日本語を入力してからノーマルモードになったとき、
IMEが日本語のままなのでコマンドをうとうとしたら全角が表示されイライラします。これを解消します。
具体的には、日本語固定モードというのを使用して、ノーマルモードではIMEがオフになるように設定します。

vim/gvimで日本語を使いやすくする - fudist
https://sites.google.com/site/fudist/Home/vim-nihongo-ban/vim-japanese


4.プラットフォームを問わず設定を共有する。
vimはwindows、mac、linuxで使用できます。
自分好みにした設定はせっかくなのでどの端末でもどのプラットフォームでも使えるようにしたいです。

githubにvimrcを登録し、git cloneでいつでも取り出せるようにしましょう。

そろそろしっかりvimを使う。dotfilesのgithub管理とvundleの導入。 - 南極の図書館
http://holypp.hatenablog.com/entry/20110515/1305443997
ojimac/dotfiles
https://github.com/ojimac/dotfiles


以上4ステップで、「自分好みにしてあるvimの設定やプラグインを、プラットフォーム問わずどこにでも引き出せる」状態になりました。
もう何も恐れるものはありません。vimをどんどん使っていきましょう。
しかし、vimの設定とプラグインをいじるよりも、その環境に沿ったIDEを使った方が早い場合もあります。
そのときはためらわずにIDEを使った方がよいと思います。


vim使えるとかっこいいのは間違いないです。でも開発ならやはりIDEの方が効率いいです。
設定やプラグインを突き詰めたいのもわかります。実際私も設定ファイル探ったりするの楽しかったです。が、vimを使ってやろうとしていた作業の納期は大丈夫なんですか?

使えないということと使わないということは意味が違います。
メリットデメリットを測って最善の開発環境を選択できるようになりましょう。