rbenv の plugins
イントロ
今使ってる rbenv
の plugin
たち。
rbenv
はこういうエコシステムが便利だから使い続けている。
最近務めている会社では流行りのようなので、私もやってみる。
plugins
% l .rbenv/plugins/ rbenv-ctags rbenv-default-gems rbenv-gemset rbenv-update ruby-build
順に紹介
rbenv-ctags
ruby のコアライブラリにタグファイル(ctags
用)を作ってくれるやつ。
ruby のコアライブラリを追うときに便利。だが、これは vim 用のタグしか吐いてくれない。(作者が vim 使いだから?)
vim 使える人は本家を使えばいいのだけど、私は emacs
しか使えないので、emacs
用のタグを吐くように、fork したものを使ってる。
PR 出すと vim マッチョな作者に殺されそうなのでしていない。
rbenv-default-gems
sstephenson/rbenv-default-gems
rbenv build
を使って ruby を install した時に、自動で gem を install してくれるやつ。
一回入れてしまうと便利。有名。
少し変わったことといえば、mgi166/dotfiles で default-gems
ファイルをバージョン管理していて
rake install default-gems
で ~/.rbenv/default-gems
ディレクトリにシンボリックリンクを貼ってくれるようにしたが、このメソッド、全く流行る気がしない。
% cat ~/.rbenv/default-gems bundler pry pry-byebug pry-stack_explorer ripper-tags
デフォルトの環境汚したくないけど、汚しまくっていて、羞恥心がなくなりつつある今日この頃。
rbenv-gemset
一言で言うと rbenv
版 rvm gemset
gem を管理するやつ。bundler
はプロジェクト単位で管理するけど、これは自在に namespace を作ることができる。
昔は gem 作るたびに gemset
作ってた。Gemfile
作るのめんどいけど、何か作ろうかなーって時に使う。
最近は何かやる際には gem
にするつもりがなくても bundle gem
や bundle init
で頑張る場合が多く、出番が少ない。
あ、でも rails
っていう gemset 作っておくと、rails new
する時楽で好き。
ruby-build
のように、.rbenv-gemsets
ファイルの有無で gemset
が決まるので、bundler
と共存する道はある、と思ってる。
% rbenv gemset list 1.9.3-p545: chef_repo veewee-boxes 2.1.0: d_parallel hipchat_searcher 2.1.2: dangerous_open_uri hipchat_searcher qiita-notify rails s3_utils 2.1.5: rails 2.2.1: rails 2.3.0-dev: rails
rbenv-update
rbenv update
コマンドで、全ての plugin を git pull
してくれるやつ。
これのお陰で ruby の新しいバージョンが出るたびに、毎回
cd ~/.rbenv/plugins/ruby-build
git pull
しなくてよくなった。 コマンド覚えやすいから好き。
ruby-build
rbenv-build
じゃなくて、ruby-build
rbenv
を有名にした MVP
。(と思っている)
説明不要。
まとめ
ネタになると思ったけど、有名どころしか使ってない。