2009-04-10
■ [ruby] Thorってなんなの?yet another rakeなの?
Thorについて分かっていること:
- rubyforgeにアカウントがあるがリリースはない
- と思ったらgithubから入れろということか
- コマンドラインアプリを書くためのツールらしい
- 作者の説明
- Merbの開発者だ
- sinatra-bookのビルドにも使われてる
どうも、*.thorというファイルでThorを継承したクラスを定義しておくと、そのメソッドが thor なんちゃら で呼べたりするらしい。
例。test.thor (ファイル名はどうも関係ないらしい)
class Sample < Thor desc "hello", "greets to you" def hello puts "Hello!" end end
thor sample:hello で実行。
Hello!
thor -Tでタスク一覧。
sample ------ sample:hello greets to you
ふーん。
Rakeタスクとできることは同じような感じだけど*1
- Rakeは依存関係を記述するのが主目的で、コマンドラインツールとして使うのは若干目的を外れている
- Thorの方が薄いDSL (素のRubyに近い) ので書きやすそう
と思った。
*1 bin/rake2thorとかあるから、意識はしてるみたいだw