2012-10-10 31 views
7

के रूप में डॉट (।) का सम्मान नहीं करता है। मैं ओएस एक्स पर आईआरबी का उपयोग कर रहा हूं, और जब मैं विकल्प बाएं/दाएं (या मेटा + बी/एफ) दबाता हूं तो कर्सर अगले/पिछले शब्द लेकिन irb डॉट (।) वर्ण को शब्द विभाजक के रूप में नहीं मानता है। (।)आईआरबी एक शब्द-ब्रेक कैरेक्टर

मैं .irbrc में जोड़ने के लिए कोशिश की है, तो यह अब इस तरह दिखता है:

Readline.basic_word_break_characters = " \t\n`><=.;|&{(" 

लेकिन वह कोई प्रभाव नहीं है।

मैं स्टॉक माउंटेन शेर रूबी का उपयोग कर रहा हूं, और मैन्युअल रूप से संकलित 1.9.3, irb के दोनों संस्करण समान व्यवहार करते हैं। इसके अलावा डॉट को बैश और प्रिंस में विभाजक के रूप में माना जाता है, इसलिए सिस्टम की विस्तृत सेटिंग्स शायद ठीक है।

सराहना की किसी भी मदद की,

धन्यवाद

+1

इसी तरह के प्रश्न: http://stackoverflow.com/questions/5097919/word-boundaries-in-irb – pje

उत्तर

3

ठीक है, ऐसा लगता है कि समस्या नहीं libreadline बिल्कुल अपने सिस्टम में स्थापित थीं था। नवीनतम रीडलाइन स्थापित करना और रूबी को पुनः संयोजित करना समस्या को हल करता है।

मैंने ftp://ftp.cwru.edu/pub/bash/readline-6.2.tar.gz से रीडलाइन 6.2 का उपयोग किया है, जिसे स्थापित किया गया था मूल ./configure && make && make install

और मैं माणिक का निर्माण निम्नलिखित विकल्पों के साथ

sudo ruby-build 1.9.3-p194 /opt/ruby-1.9.3-p194 CONFIGURE_OPTS="--with-readline-dir=/usr/local" 

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

भी ठीक से काम कर ReadLine की तरह कुछ लौट जाना चाहिए:

Readline::VERSION => "6.2"  

और दुर्व्यवहार कर एक का कहना है:

Readline::VERSION => "EditLine wrapper" 
+0

धन्यवाद, यह मेरे लिए काम करता है। (Http://stackoverflow.com/a/7020698/835766) से कुछ जानकारी के साथ मैं इसे आरवीएम के तहत भी काम करने में सक्षम था। –

1

आप (ऊपर के साथ समस्या हो रही है या तो वह या स्थापित करने में विफल आपको बस अधिक निर्देश की आवश्यकता है), यहां मैंने यह काम करने के लिए किया है।

नवीनतम मैक ओएस एक्स (10.11.2 एल कैप्टन) पर उन लोगों के लिए:

curl ftp://ftp.cwru.edu/pub/bash/readline-6.3.tar.gz > temp-readline.tar.gz तो tar temp-readline.tar.gz साथ अनज़िप। फिर cd readline-6.3 के साथ उस निर्देशिका में जाएं। ऊपर की तरह, ./configure && make && make install के साथ कॉन्फ़िगर करें और इंस्टॉल करें।

उम्मीद है कि इससे मदद मिलती है।