在交互式ruby控制台内部,如果我输入ri然后我得到一个未定义的方法错误,我是否明确必须在某处安装文档才能使其工作?
irb(main):015:0* ri --help
NoMethodError: undefined method `-@' for nil:NilClass
from (irb):15
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:295
irb(main):016:0> ri Array
NoMethodError: undefined method `ri' for main:Object
from (irb):16
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:295
答案 0 :(得分:4)
事实上,ORI gem可以将RI带到您的IRB控制台并提供更整洁的类探索功能。
~/.irbrc
)require "rubygems"
require "ori"
Array.ri
String.ri
[].ri
"".ri
5.ri
String.ri :upcase
"".ri :upcase
[].ri :sort
Hash.ri :[]
String.ri //
"".ri //
"".ri /case/
"".ri /^to_/
User.ri /^validates_/
等
答案 1 :(得分:3)
你可能不想这样做。您应该做的是退出shell(或者最好是打开一个新的终端选项卡或屏幕会话)并从那里单独运行ri,这是一个程序。如果你真的,真的,想要做你正在做的事情,你总是可以使用反引号来运行ri --help
或任何其他shell命令。
irb(主要):015:0 *`ri --help`
答案 2 :(得分:3)
只需--help
:
irb(main):040:0> --help
Enter the method name you want to look up.
You can use tab to autocomplete.
Enter a blank line to exit.
>> Array
←[0m←[1;32mArray < Object←[m
(from gem backports-1.18.2)
------------------------------------------
要返回IRB,我按了Crtl+C
,但可能还有一些退出命令。