49
51

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

初めましてのgemと最速で仲良くなる方法! (gem学習) with vim

Last updated at Posted at 2012-09-12

先日の記事 がバズってて驚いております。
社内の情報共有のつもりでしたが、、ありがとうございます。

はじめに

さて、Railsって情報が多すぎて理解するのに時間がかかるんですよね。

しかも、日本語の記事が少なく、情報も古くて時間だけがどんどん過ぎていく...
だから、コピーの知識だけ身に付いてしまい、なかなか「理解」が遠いんですよね。
「使っているgemのことならバッチシ理解してるよ!」と言える人も案外少ないのではないかと思います。

皆様は如何でしょうか。

私はそのレベルで 「RoR出来るよ!」 って言うエンジニアはナンセンスだと思っています。
なので、最速でgemと仲良くなる環境を作りました。

設定は簡単かつ10分で終わります。

1. リファレンス

yardは、サーバーを立てて、gem毎のrdoc形式を見る事のできるツールです。
本家のリファレンス以上に上質な情報は無いかと思います。

![yard]( http://cl.ly/image/0g2C0O1l081k/スクリーンショット 2012-09-12 20.46.23.png )

インストールは超簡単。
下記の後にhttp://localhost:8808にアクセスすればOK

shell
gem ins yard
yard server --gems

リファレンス高速化

vim上から一瞬でリファレンスを開けるようにします。
vimに設定を追加 します。
これで、gemのモジュール名の上で<Space>yを押せばリファレンスが開きます!

2. 直接コードを読む

やっぱりね、表面上の付き合いだけじゃなくて、中身をさらけ出してこそ仲良くなれると思うんですよ。
gemのインストールされたフォルダにアクセスして、コードを直接読みます。
結構コード中にデモが書いてあったり、便利なメソッドの発見があったりして楽しい。

tags高速化

カーソル下の単語から、gemのコードまで飛べるようにします。
まずは、おなじみctagsでgem専用のtagsファイルを作ります。
あとはタグジャンプ!
vimの設定は unite-tag もオススメです。

# shellで実行
ctags -R -a --sort=yes --exclude=*.js --exclude=*.h --exclude=log --exclude=*.yml --exclude=.git --langmap=RUBY:.rb ~/.rbenv/versions/1.9.3-p125/lib/ruby/gems/1.9.1/gems -f ~/tags`
mv tags ~/gtags
# vimrcに追加
`au FileType ruby,eruby setl tags+=~/gtags`

さらなる最速を求めて。

これで、情報収集の時間が昨日までの半分ぐらいになりました!
うーん、近くにRoRをやっている方が少ないので、リファレンスとコード以外に頼れるものが無いんですよね。

Rubyistの先輩方、もっと良い方法があればどうかご教授ください。

しかし、まだまだ不満があります。gemのメソッド補完や簡易テンプレートも全てvimでやりたいなぁと思っています。
うーん、辞書ファイル以上の補完が欲しい...

おまけ

今週末からしばらく東京に行くんですが、
誰かエンジニアの方か、学生の方雑談しませんか?

何故って、土日ニートだからです。。
最近仕事しかしていないので、もしお暇な方いらっしゃればお話しましょう!
カフェとかで軽くおしゃべり出来れば良いなと思っています。

人事の方でしたら、雑談ついでに関西の優秀な学生エンジニア紹介します。
お時間がある方、関西の学生に興味がある方、物好きな方、 twitter で連絡お待ちしてます。

49
51
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
49
51

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?