2012-11-08 22 views
55

के अंत में वस्तु को प्रिंट मैं, कहते हैं, प्रत्येक से एक दिया मॉडल और उत्पादन कुछ के सभी उदाहरणों के माध्यम से लूप, अंत में, आईआरबी अभी भी संपूर्ण वस्तु प्रिंट होगा तो से सांत्वना रेल।बंद करो एक पाश

वस्तु समाप्त होता है लाइनों के सैकड़ों ले जा रहे हैं, तो यह एक लंबा सफर तय किया जा इससे पहले कि मैं क्या मैं वास्तव में लिए देख रहा था करेंगे। रेल कंसोल में इसे अक्षम करने का कोई तरीका है?

उत्तर

74

आप सामान्य रूप में गूंज निष्क्रिय करने के लिए आप भी एक कमांड लाइन में एक से अधिक भाव कह सकते हैं नहीं करना चाहते हैं। केवल अंतिम अभिव्यक्ति का आउटपुट प्रदर्शित किया जाएगा।

big_result(input); 0 
+2

यह वास्तव में मैं चाहता था। –

+2

बहुत बढ़िया है, धन्यवाद! बहुत आसन। – blindsnowmobile

75

कॉल conf.echo = false और यह वापसी मूल्य मुद्रित नहीं करेगा। यह किसी भी irb सत्र के लिए काम करता है, न केवल रेल कंसोल।

यदि आप इसे स्थायी बनाना चाहते हैं, तो इसे अपनी irb कॉन्फ़िगरेशन में जोड़ें।

echo 'IRB.conf[:ECHO] = false' >> $HOME/.irbrc 
+0

यदि आप हमेशा डिफ़ॉल्ट रूप से यह मामला रखना चाहते हैं तो आप क्या करेंगे? –

+0

@ एसिस्फरन मुझे लगता है कि इसे रेल प्रारंभकर्ताओं में डालने का काम होगा। – lulalala

+0

प्रतिक्रिया के लिए धन्यवाद, मैं वास्तव में पाया है कि बस लाइन 'IRB.conf फेंक [: ECHO] = FALSE', मेरे .irbrc फ़ाइल में इसके बारे में ख्याल रखा। यही कारण है कि निश्चित रूप से भी अपने सभी आईआरबी सत्रों में गूंज के बदल जाता है, लेकिन मैं उस के साथ ठीक हूँ। –

24

अस्थायी रूप से वापसी मान आप अपने पाश या समारोह के अंत में एक nil बयान जारी कर सकते हैं मुद्रण से सांत्वना रोकने के लिए, लेकिन बदले दबाने से पहले।

record.each do |r| 
    puts r.properties 
end; nil 

या यदि आप टाइपिंग को कम करना चाहते हैं तो यह भी एक संख्या हो सकती है। लेकिन यह परिदृश्यों में भ्रमित हो सकता है, जिसे मैं नहीं सोच सकता।

record.each do |r| 
    puts r.properties 
end; 0 
+0

इस मदद की। धन्यवाद –