2010-11-27 12 views
12

मैं सिर्फ विम स्थापित किया है और जब मैं इन त्रुटियों को मिल कभी मैं रूबी फ़ाइल में खोलने के लिए जाना:समस्या

Error detected while processing C:\Program files (x86)\Vim\vimfiles\ftplugin\ruby.vim 
line: 76 
Encoding::ConverterNotFoundError: code converter not found (UTF-16LE to ASCII-8bit) 
line: 93 

E121 :Undefined varaible: s:ruby_path 
E15: Invalid expression: s:ruby_path 
line: 76 

NameError: uninitialized constant Gem::Quickloader 
line: 93 

मैं रूबी 192 स्थापित है और मैं भी अगर मैं गहरे लाल रंग का अद्यतन इस त्रुटि मिलती है वीआईएम फाइलें

इन दो पंक्तियों को उन त्रुटियों को अगर यह मदद करता है की बात कर रहे हैं:

line 76: ruby VIM::command('let s:ruby_path = "%s"' % ($: + begin; require %q{rubygems}; Gem.all_load_paths.sort.uniq; rescue LoadError; []; end).join(%q{,})) 

line 93: let &l:path = s:ruby_path 

उत्तर

0

कैसे आप रूबी स्थापित किया था?

irb में जाकर दर्ज करें:

Gem.all_load_paths.uniq 

जो अपने जवाहरात स्थापित है कि रत्न के बारे में भी जानता है के लिए रास्तों की एक सूची प्रदान करना चाहिए।

क्या आपके त्रुटि संदेश में विफल हो रहा है और मुझे ओर जाता है पर शक करने के लिए आपको कुछ पथ या पर्यावरण की जानकारी याद कर रहे हैं यही कारण है, क्योंकि यह vim तरह लग रहा है अपने रूबी रत्न सही ढंग से नहीं मिल पाई है।

Encoding::ConverterNotFoundError कोर लाइब्रेरी अपवाद है, इसलिए यह हिस्सा काम कर रहा है, लेकिन ऐसा लगता है कि जेम कमांड काम नहीं कर रहा है।

+0

मैं टाइप करता हूं और विभिन्न फाइलों का पूरा समूह आया। अगर वे मदद करेंगे तो मैं उन्हें पेस्ट कर सकता हूं। क्या पर्यावरण जानकारी गायब हो सकती है? मैंने जांच की और मेरे पास रूबी पथ है। इसके अलावा vim अभी भी उचित वाक्यविन्यास हाइलाइटिंग और इंडेंटिंग कर रहा है, लेकिन जब भी मैं एक फ़ाइल खोलता हूं तो मुझे वह संदेश मिलता है और फिर भी मुझे त्रुटि संदेश मिलते हैं यदि मैं विम फ़ाइलों पर विम के स्वत: पूर्ण का उपयोग करने का प्रयास करता हूं। – Alex

+0

ऐसा लगता है जैसे जेम ठीक है। यदि विम का स्वत: पूर्ण कार्य हो रहा है तो मुझे संदेह है कि यह रूबी से संबंधित नहीं है, और आपको जो संदेश मिला वह एक लाल हेरिंग है, जिसमें यह वास्तविक समस्या से परेशान है। यदि आपके पास आईआरसी क्लाइंट ऐप है तो आप irc.freenode.net पर #vim चैनल पर जा सकते हैं। वे बहुत सक्रिय हैं और इसे जल्दी से समझने में आपकी सहायता करने में सक्षम होना चाहिए। –

+0

ठीक है, मैं कोशिश करूँगा। धन्यवाद – Alex

0

आपकी समस्या शायद रूबी 1.9 है - AFAIK Vim केवल रुबी 1.8 के साथ काम करता है, इसलिए आपको विम काम करने के लिए अपने रूबी संस्करण को डाउनग्रेड करना पड़ सकता है।

+0

विम 7.3 रूबी 1 9 1 के साथ बनाया गया था। मेरे पास रूबी 1 9 2 स्थापित है लेकिन मेरे पास अभी भी वह फ़ाइल है जो विम की एक्सई फाइल कॉल है, जो "msvcrt-ruby191.dll" है। तो क्या यह प्लगइन है जो विम के साथ पूर्वस्थापित है जो काम नहीं कर रहा है या खुद को विम नहीं कर रहा है? – Alex

0

मैं फाइल खोली "C: ... \ vim73 \ ftplugin \ ruby.vim" और सही से पहले लाइन 73 या तो है, जहां कोड पढ़ता है:

if !exists("s:ruby_path") 

मैं कहा:

let s:ruby_path = 'C:\ruby192\bin' 

अब तक विम रूबी फ़ाइलों को संपादित करने के बारे में खुश दिखता है। ध्यान दें कि मैंने ruby.exe के लिए बेहतर पथनाम प्राप्त करने के लिए "प्रोग्राम फ़ाइलें" की बजाय "सी:" निर्देशिका में अपनी रूबी स्थापित की है।

ruby.vim की मेरी संस्करण दिनांकित 2010 मार्च 15.

15

ध्यान दें कि संपादन ruby.vim फ़ाइल के बजाय आप सिर्फ

let g:ruby_path = ':C:\ruby192\bin' 

अपने _vimrc फ़ाइल में बराबर अपने मंच के लिए जोड़ सकते हैं (या है)। इस तरह आपको इसे अपडेट करते समय ruby.vim को फिर से संपादित करने की आवश्यकता नहीं होगी।

+0

कोई विचार क्या वीआईएम इसका उपयोग करता है? मैं 1.8.7 और 1.9.3 के बीच आगे और पीछे स्विच करता हूं इसलिए मुझे दिलचस्पी है। – Jason

0

रूबी 1.9.2 (1.9.2p180 (2011-02-18) पोस्टिंग के समय) के नवीनतम रिलीज को अपडेट करने के लिए यह मेरे लिए तय किया गया।

मैं 1.9.2p132 चल रहा था या तो जब मैं समस्या है, जो patched around Dec 2010 किया गया है लगता है था। आप ruby -v चलाकर अपना वर्तमान संस्करण देख सकते हैं।

5

आप RVM चलाने के लिए और उसके डिफ़ॉल्ट माणिक चाहते हैं, का उपयोग करें:

let g:ruby_path = "/Users/allen/.rvm/rubies/default/bin" 

आप अपने प्रोजेक्ट .rvmrc फ़ाइल, आप अपने में एक वातावरण चर बना सकते हैं में अपने गहरे लाल रंग का दुभाषिया सेट करते हैं।rvmrc:

rvm [email protected] --create 
export RUBY_BIN=`which ruby | sed 's/ruby$//'` 

आप अपने .vimrc में वातावरण चरों का उपयोग कर सकते हैं:

let g:ruby_path=$RUBY_BIN 

(आप नोट भी अपने .bashrc में एक डिफ़ॉल्ट $ RUBY_BIN सेट या .zshrc तो यह .rvmrc के बाहर काम करता है चाहिए परियोजनाओं।)

यदि आपके ~/.rvm/माणिक/डिफ़ॉल्ट/बिन पथ तक मौजूद नहीं है, तो आप रूबी के अपने rvm सिस्टम डिफ़ॉल्ट सेट करना होगा। अपने कमांड प्रॉम्प्ट या टर्मिनल आवेदन में दर्ज करें:

rvm use 1.9.2 --default 

का उपयोग कर जो भी गहरे लाल रंग का संस्करण आप की जरूरत है।