rubyで簡単なツールを作る時の備忘

個人的に使用するだけのコマンドラインツールをrubyで作成する時の手順を備忘録として残しておく

1. テンプレートの作成

$ bundle gem awesome_tool -b -t

-b が実行ファイルを bin の下に作成。-t がテスト含む

2. gemspec 編集

development_depencency に適当に guard-rspec とか fuubar とか足す

3. bundle install

$ bundle install --path=vendor/bundle --binstubs .bundle/bin

foobar とかグローバルにインストールしても意味ないので、手元のプロジェクト内だけにインストールする
vendor/bundle と .bundle は .gitignore に追加しておく
rspec や rake といったコマンドを .bundle/bin に放り込んでおくと、rbenv-binstubs プラグインがよしなにやってくれて bundle exec rspec とか打たなくて済む。

4. Guard ファイル作成

$ guard init rspec

できた Guardfile から、Rails のための設定を削除しておく。
notification :emacs しておくと growl っぽいのが飛んでこなくてよい。

5. コードを書く

6. 手元で試す

$ rake build
$ rake install
$ bundle exec awesome_tool

で完成。github とかに野良gemとして置いておく