Ruby
Vim
Rails
AdventCalendar
開発環境

Railsで無理なくVimに入門する方法

More than 5 years have passed since last update.

Vimを始めようかなーと思ってる人へ

僕はまだVimを使い始めて4ヶ月ですが、IDEよりVimの方が高速かつ快適に開発ができるようになりました。
しかし、そんな僕もこれまでに何度もVim(Emacs)に挫折してきました。
本エントリはそんな僕がどうして今回はVimに"無理なく"使えるようになったのか紹介します。

なぜVim(Emacs)はハードルが高いのか

僕は多くの人がVim(Emacs)を使いたいと思っても挫折するのは”なかなか前のエディタより便利にならない”というのがあったからだと思います。頑張った先の具体的なメリットがみえていなかったのです。
いわば自転車が歩くより速くて楽だと知らないのに、自転車に乗る練習をしているようなものだったんじゃないでしょうか。

そこで、もし最初からいきなり以前のエディタより便利な機能があると体感できたらどうでしょうか。
そんな都合のいいことと思うかもしれませんが、ラッキーなRailsプログラマはそれができるのです。

rails.vimがすごく楽

Vimのrails.vimを使うと、最初からめちゃくちゃ楽になります。
まずファイルの移動が楽。コントローラーのアクションから、そのアクションのビューに移動するときに":R"と打つだけ、戻るときも":R"と入力するだけです。
とりあえず:Rとその派生の:Rmodel name, :Rcontroller nameなどを覚えるだけでも既存のIDEなんかよりずっと簡単に開発ができるようになるでしょう。

以前の僕がVimに対して思っていたことと今思ってること

  • 操作について覚えることが多すぎる
    • 多いが必要なところだけ覚えればいい
  • プラグインをたくさんいれなくてはいけない
    • いまはvundler(rubyのbundlerみたいな)というのがあり管理が楽
  • ファイルのツリー表示がない。バッファの管理とかわからない
    • ツリー表示はある

手順

それぞれを詳しく書くと長くなるのであとは各自で調べて下さい。
vundle,NERDTree,rails.vimを入れれば、普通のエディタなんかよりずっと簡単に開発ができるようになります。
僕は下記のような順番で覚えていきました

  • チートシート(PDF)をプリントアウトする
  • 最初のチュートリアルをやる(:Tutorialっていれるとでてくる、途中まででもいい)
  • vundleを入れてプラグイン管理を楽にする
  • NERDTreeを入れて、ファイルのツリーを表示できるようにする
  • rails.vimを入れる
  • チートシートをもう一回見てみる(最初に書いてなかったとしか思えない機能が見つかる)
  • チュートリアルをもう一回やってみる(最初に紹介されてなかったとしか思えない機能が見つかる)

まとめ

  • メリットが見えてれば頑張れる
  • Vim使いの人はghjkあんまり使わないけど誰か教えて欲しい