岩月と申します。

On 2005/10/05, at 11:57, 岩崎 弘孝 wrote:
> opts.on_tail 内あるいは特定のopts.onの処理を明示的に
> 呼び出すにはどのようにすれば宜しいですか?

OptionParserが外部に公開しているメソッドで行う方法はわかりません 
でした。内部ではOptionParser#searchあたりが使えそうな予感 
がしますが、いずれにしても外部からオプションを明示してProc 
オブジェクトを取り出す方法は無いような気がします。

> 例えば引数なしの起動の際にopts.on_tailで定義された処理を
> 実行するといった処理をイメージしています。

もともと単体での呼び出しを想定しているのでしたら、あらかじめ 
Procオブジェクトを生成して、それをOptionParser#onに指定す 
るというのはいかがでしょうか。

サンプル:

require "optparse"

foo_proc = Proc.new do
   puts("Foo!")
end

ARGV.options do |q|
   q.on("--foo", foo_proc)
   q.parse!
end

foo_proc.call

実行結果:

% ruby a.rb
Foo!
% ruby a.rb --foo
Foo!
Foo!

-- 
岩月博之 <URL:mailto:don / na.rim.or.jp>