2013-03-29 13 views
17

Czy istnieje sposób aby dowiedzieć się, która część mojego polecenia ri że nie pokazuje dokumentację Ruby:Jak uzyskać dokumentację Ruby z wiersza poleceń

$ 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 

Gdy używam Pry:

$ 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 

Co należy zrobić, aby dokumentacja była wyświetlana?

Odpowiedz

26

Jeśli używasz RVM do zarządzania instalacjami Ruby można to zrobić:

rvm docs generate 

Jeśli nie, spróbuj w ten sposób:

gem install rdoc-data 
rdoc-data --install 

następnie spróbuj ponownie komendę ri.

+0

nie używam rubin z menedżera pakietów ArchLinux za – Kokizzu

+0

ok, postaram drugi: 3 dzięki – Kokizzu

+0

tak, to działa: 3 thanks – Kokizzu

3

Wspomniałeś w komentarzu, że używasz pakietu Ruby z menedżera pakietów archlinux. Co jest potrzebne do ri jest, aby zainstalować pakiet ruby-docs:

$ pacman -S ruby-docs 

myślę, że oddzielenie pakietów więc ludzie, którzy nie chcą docs można zapisać na użycie dysku.

2

Gdy używam pry:

$ 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 

Co należy zrobić, aby pojawić się w dokumentacji?

Cóż, nie ma żadnych metod String.split lub String.strip. Istnieją jednak metody i. Spróbuj zapytać o nie, a prawdopodobnie zdobędziesz ich dokumentację.

+0

ah tak, zarówno. i # nie działają, gdy są podważone, ale oba działają w normalnej linii ri łączącej – Kokizzu

11

Z podważyć, to lepiej, aby zainstalować pry-doc gem, a następnie użyć polecenia 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)> 

Uwaga: Można również użyć ? alias show-doc jeśli wolisz.

Powiązane problemy