merbのsliceをfreezeする
merbのsliceをfreezeするには、
1 % rake slices:<slice_name>:freeze
を実行すればOKです。
これにより、MERB_ROOT(Merbアプリケーションのルートディレクトリ)の下にslicesディレクトリが(無ければ)作成され、その下に
<slice_nameというディレクトリが出来ます。
Sliceはその中にfreezeされます。
merbのsliceをfreezeするには、
1 % rake slices:<slice_name>:freeze
を実行すればOKです。
これにより、MERB_ROOT(Merbアプリケーションのルートディレクトリ)の下にslicesディレクトリが(無ければ)作成され、その下に
<slice_nameというディレクトリが出来ます。
Sliceはその中にfreezeされます。
merbのsliceを管理するRakeタスクの一覧をメモしておきます。
以下はmerb-auth-
1 slices:merb_auth_sli ce_activat ion:copy_a ssets 2 slices:mer b_auth_sli ce_activat ion:freeze 3 slices:mer b_auth_sli ce_activat ion:freeze :app 4 slices:mer b_auth_sli ce_activat ion:freeze :app_with_ gem 5 slices:mer b_auth_sli ce_activat ion:freeze :gem 6 slices:mer b_auth_sli ce_activat ion:freeze :mailers 7 slices:mer b_auth_sli ce_activat ion:freeze :models 8 slices:mer b_auth_sli ce_activat ion:freeze :unpack 9 slices:mer b_auth_sli ce_activat ion:freeze :views 10 slices:mer b_auth_sli ce_activat ion:instal l 11 slices:mer b_auth_sli ce_activat ion:migrat e 12 slices:mer b_auth_sli ce_activat ion:patch 13 slices:mer b_auth_sli ce_activat ion:prefli ght 14 slices:mer b_auth_sli ce_activat ion:setup_ directorie s 15 slices:mer b_auth_sli ce_activat ion:spec 16 slices:mer b_auth_sli ce_activat ion:spec:c ontroller 17 slices:mer b_auth_sli ce_activat ion:spec:d efault 18 slices:mer b_auth_sli ce_activat ion:spec:h tml 19 slices:mer b_auth_sli ce_activat ion:spec:m ailer 20 slices:mer b_auth_sli ce_activat ion:spec:m odel 21 slices:mer b_auth_sli ce_activat ion:spec:v iew 22 slices:mer b_auth_sli ce_activat ion:stubs
merb-maile
config/ini
sendmailを使う場合
1 Merb::BootLoader.before_app _loads do 2 Merb::Mailer.config = { 3 :sendmail_p ath => '/usr/sbin/ sendmail' 4 } 5 Merb::Mailer.delivery_m ethod = :sendmail 6 end
SMTPを使う場合
1 Merb::BootLoader.before_app _loads do 2 Merb::Mailer.config = { 3 :host => 'smtp.yourd omain.com', 4 :port => '25', 5 :user => 'user', 6 :pass => 'pass', 7 :auth => :plain, 8 :domain => "localhost. localdomai n" 9 } 10 end
See Also
MerbではRSpecを使ってテストをするのが標準構成になっていますが、
merb-genが生成したアプリケーションのひな形では、
rake specの実行結果は色付きにはなっていません。
これを色付きにするためには、
spec/spec.の中で以下のように設定します。
spec/spec.
1 --color
これだけです。
Gitでは、SVNなどと違ってリビジョン番号のような順序付きの数字ではなく、
ハッシュのような識別子でコミットが管理されています。
なので、時系列にそってコミットIDを列挙したい場合は、
以下のように git rev-list コマンドを使えば良いようです。
1 % git rev-list 2dfb3...(snip)...cf210
これで、指定したコミットより過去(指定したコミットを含む)のハッシュが時系列にそって得られます。 先頭は一番新しいもので、末尾が一番古いものです。
1 % git rev-list HEAD
とすると、全てのコミットのハッシュを時系列にそって取得出来ます。
MacOSXのTerminal.a
TerminalCo
インストール方法
~/Library/ Applicatio n Support/SI MBL/Plugin s/の下にコピーします。
ディレクトリが無い場合は作成してください。これでOKです。 一時的にこの機能をオフにする場合は、 以下のようにメニューから「Copy On Select」をオフにしてください。

オンに戻せば再び有効化されます。
追記
ソースコードをGitHubで公開しました。
MITライセンスという事でお願いします。
Merbのsliceは、独立したMerbのサブシステムを再利用する仕組みです。 はじめ、Railsのcomponentのようなものだと思っていたのですが、 どちらかというとEnginesのような機能を持っているようです。
Merbのsliceは、Gemで管理されているので、sliceを利用する場合は、
sliceのGemをインストールします。
例えば、
merb-auth-
1 % git clone git://github.com/ck/ merb-auth- slice-acti vation.git 2 % cd merb-auth- slice-acti vation 3 % sudo rake install
そうすると、以下のようにGemがbuildされてインストールされます。
1 % gem list merb-auth-slice-acti vation 2 3 *** LOCAL GEMS *** 4 5 merb-auth- slice-acti vation (1.0)
この状態で、config/depファイルに依存関係を登録します。
config/dep
1 dependency"merb-auth- slice-acti vation"
続いて、sliceをアプリケーションにインストールするRake タスクを実行します。
1 % rake slices:merb_auth_sli ce_activat ion:instal l
Sliceに関連するRubyコードがMERB_ROOT/public/sli以下に展開されます。
あとは、config/rou
DHHの
Tweet
によるとRails-2.2.
1 % gem search -r rails 2 (snip) 3 rails (2.2.2) 4 (snip)
Rails 2.2: i18n, HTTP validators
Rails 2.2 is finally done after we cleared the last issues from the release candidate program. This release contains an long list of fixes, improvemen
ts, and additions that’ll make everything Rails smoother and better, but we also have a number of star player features to parade this time.
自分用メモをかねて。
debianを使ってる時は、
1 % netstat -l -n -p | grep 4000
のような感じで調べていたのですが、MacOSXだとnetstatの挙動が微妙に違うようで、うまく調べられなくて困っていた所、shachiさんから教えてもらった方法を紹介します。
1 % lsof -i :4000
こんな感じにlsofコマンドを使うと、ポート4000をListenしているプロセスを調べる事ができます。
Update
もうちょっと詳しく知りたい場合は、
1 % lsof -n -P -i :5000
こんな感じのオプションを追加すると良い感じです。
Merb-1.0.1
1 c[:log_file] = Merb.root / "log" / "development.log"