2013-03-29 4 views
17

से रूबी प्रलेखन पाने के लिए मेरे ri आदेश का कौन सा हिस्सा पता लगाने के लिए एक तरीका है कि रूबी के दस्तावेज़ नहीं दिख रहा है है:कैसे कमांड लाइन

$ 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 उपयोग कर रहे हैं आप ऐसा कर सकते हैं:

rvm docs generate 

यदि नहीं, तो ऐसा करने का प्रयास करें:

gem install rdoc-data 
rdoc-data --install 

तो ri आदेश फिर कोशिश करें।

+0

नहीं, मैं archlinux के पैकेज मैनेजर से गहरे लाल रंग का उपयोग कर रहा हूँ – Kokizzu

+0

ठीक है, मैं एक दूसरे की कोशिश करेंगे: 3 धन्यवाद – Kokizzu

+0

हाँ, यह काम करता है: 3 धन्यवाद – Kokizzu

3

आपने एक टिप्पणी में उल्लेख किया है कि आप archlinux के पैकेज प्रबंधक से रूबी पैकेज का उपयोग कर रहे हैं।

$ pacman -S ruby-docs 

मुझे लगता है कि वे संकुल अलग इसलिए लोग हैं, जो डॉक्स नहीं करना चाहती डिस्क उपयोग पर बचा सकते हैं: क्या आप ri के लिए की जरूरत है 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.split या String.strip कोई विधि नहीं हैं। हालांकि, String#split और String#strip विधियां हैं। उनसे पूछने का प्रयास करें, और आपको शायद उनके दस्तावेज़ मिलेंगे।

+0

आह हाँ, दोनों। और # प्रिये में काम नहीं कर रहे हैं, लेकिन दोनों सामान्य ri comamnd लाइन में काम करता है – 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 के लिए ? अन्य नाम का उपयोग कर सकते हैं।