From: Daisuke Yamazaki <yamajaki / gmail.com>
Subject: [ruby-list:42765] ?がメソッド名の途中にあるのはNG?
Date: Wed, 30 Aug 2006 04:29:36 +0900

るびきちです。

> irbのメソッドcompletionとrefeの統合をしたいと思い.method_missingを利用し
> た下記のようなプログラムを書いてみました.

おもしろい案ですね。
しかし、method_missingの濫用は得策ではありません。

参考までにihelpはriと統合しています。
http://raa.ruby-lang.org/list.rhtml?name=ihelp

require 'ihelp'

# Print out help for Fixnum
12.help

# Print out help for String#reverse
"foo".help :reverse

# Print out help for String#reverse
String.help :reverse

# Print out help for Enumerable#map
# (ri doesn't do this for some reason)
Hash.help :map

# Print out help for Enumerable#map
help "Enumerable#map"

> Rubyの文法的に?がメソッド名の途中にあるのが問題のようなのですが,
> どうすればいいのか教えてもらえますか?

仕様なのでどうしようもありません。

なので。ihelpに倣ってrefeメソッドを定義するほうが現実的です。

P.S.
zshにてM-hでmanしてくれるようにirbshでもM-hでrefe/riする機能をつけとこうかな。

--
rubikitch
http://www.rubyist.net/~rubikitch/