2013-03-29 54 views
17

的Ruby文档有没有发现我的ri命令的哪一部分的方式,没有显示Ruby的文档:如何获得命令行

$ ruby --version 
ruby 1.9.3p392 (2013-02-22 revision 39386) [i686-linux] 

$ ri --version 
ri 3.12.2  

$ ri String 
Nothing known about String 

当我使用撬:

$ pry --version 
Pry version 0.9.12 on Ruby 1.9.3 

$ pry 
[1] pry(main)> ri String 
# shows String documentation 
[2] pry(main)> ri String.split 
error: 'String.split' not found 
[3] pry(main)> ri String.strip 
String.strip not found, maybe you meant: 
String#strip_heredoc 

我应该怎么做才能使文档出现?

回答

26

如果您使用RVM来管理你的Ruby安装,你可以这样做:

rvm docs generate 

如果没有,尝试这样做:

gem install rdoc-data 
rdoc-data --install 

然后再次尝试ri命令。

+0

没有,我使用的红宝石从ArchLinux的包管理 – Kokizzu

+0

好吧,我会尝试第二个:3感谢 – Kokizzu

+0

是的,它的工作原理:3感谢 – Kokizzu

3

您在评论中提到您正在使用archlinux的包管理器中的Ruby包。你需要ri什么是安装ruby-docs包:

$ pacman -S ruby-docs 

我猜他们分开了包,这样的人不想要的文档谁可以节省磁盘使用情况。

2

当我使用撬:

$ pry --version 
Pry version 0.9.12 on Ruby 1.9.3 

$ pry 
[1] pry(main)> ri String 
# shows String documentation 
[2] pry(main)> ri String.split 
error: 'String.split' not found 
[3] pry(main)> ri String.strip 
String.strip not found, maybe you meant: 
String#strip_heredoc 

我应该怎么做才能让文件出现?

那么,没有方法String.splitString.strip。但是,有方法String#splitString#strip。试着要求这些,你可能会得到他们的文档。

+0

啊,是的,都是。和#在pry中不工作,但都在正常的rimamamand线上工作 – Kokizzu

11

随着撬,最好安装pry-doc宝石,然后使用show-doc命令:

[17] pry(main)> show-doc String#inspect 

From: string.c (C Method): 
Owner: String 
Visibility: public 
Signature: inspect() 
Number of lines: 6 

Returns a printable version of _str_, surrounded by quote marks, 
with special characters escaped. 

    str = "hello" 
    str[3] = "\b" 
    str.inspect  #=> "\"hel\\bo\"" 
[18] pry(main)> show-doc Array#pop 

From: array.c (C Method): 
Owner: Array 
Visibility: public 
Signature: pop(*arg1) 
Number of lines: 11 

Removes the last element from self and returns it, or 
nil if the array is empty. 

If a number n is given, returns an array of the last n elements 
(or less) just like array.slice!(-n, n) does. See also 
Array#push for the opposite effect. 

    a = [ "a", "b", "c", "d" ] 
    a.pop  #=> "d" 
    a.pop(2) #=> ["b", "c"] 
    a   #=> ["a"] 
[19] pry(main)> 

注意:您也可以使用?别名show-doc如果你喜欢。

相关问题