如何从命令行Ruby文档[复制](How to get the Ruby documentation

2019-08-18 05:09发布

这个问题已经在这里有一个答案:

  • 为什么我的红宝石“里”工具不会返回在命令提示符下的结果? [重复] 1个回答

有没有办法找出我的哪个部分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

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

Answer 1:

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

rvm docs generate

如果没有,尝试这样做:

gem install rdoc-data
rdoc-data --install

然后尝试ri再次命令。



Answer 2:

随着撬,最好安装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 ,如果你喜欢。



Answer 3:

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

$ pacman -S ruby-docs

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



Answer 4:

当我使用撬:

 $ 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 。 试着问这些,你可能会得到他们的文档。



文章来源: How to get the Ruby documentation from the command line [duplicate]
标签: ruby ri