जब भी मैं 'O' कमांड का उपयोग करता हूं, तो एक सेकंड के लिए विलंब क्यों होता है (ऊपर एक नई लाइन खोलें और सम्मिलित करें)?


26

जब मैं अधिकांश कमांड का उपयोग करता हूं, तो वे तुरंत प्रभाव डालते हैं। जब मैं Oकमांड का उपयोग करता हूं , हालांकि, मैं देखता हूं कि "O" वर्तमान चरित्र को लगभग एक सेकंड के लिए बदल देता है, फिर वर्तमान चरित्र वापस आ जाता है, और एक नई लाइन डाली और खोली जाती है।

मुझे oकमांड के साथ ऐसी कोई समस्या नहीं है ( नीचे एक नई लाइन खोलें और डालें)।

यह एक फर्क है, मैं उपयोग कर रहा हूँ बनाता है vimसे bashउबंटू 10.04 पर, ग्नोम टर्मिनल में।

जवाबों:


27

यदि पिछली कुंजी को दबाया गया तो ESC था, यह इसलिए है क्योंकि ESC O के साथ शुरू होने वाले एस्केप सीक्वेंस उत्पन्न कर सकते हैं। उदाहरण के लिए, कर्सर की मोड के आधार पर, अप एरो कुंजी से एस्केप अनुक्रम ESC O A उत्पन्न हो सकता है।

यदि यह आंशिक रूप से भागने का क्रम देखता है, तो विम को यह देखने के लिए थोड़े समय के लिए प्रतीक्षा करनी होगी कि क्या कोई अन्य चरित्र प्राप्त हुआ है जो आपके टर्मिनल प्रकार के लिए परिभाषित एस्केप अनुक्रमों में से एक से मेल खाता है। यदि नहीं तो यह पात्रों को अलग-अलग कीस्ट्रोक्स के रूप में मानेगा। आप एक राजधानी ए में प्रवेश करके इसका परीक्षण कर सकते हैं, यह देखने के लिए कि क्या यह इसके बजाय एक ऊपर तीर के रूप में व्यवहार करता है, लाइन का इंतजार कर रहा है।

कुछ विम सेटिंग्स हैं जिनका उपयोग इसे नियंत्रित करने के लिए किया जा सकता है। :set ttimeoutlen=100100ms के लिए भागने के क्रम मध्यांतर बदल जाएगा। :set noesckeysडालने मोड में भागने के क्रम भेजने वाले कुंजी की मान्यता को पूरी तरह से अक्षम कर देगा। इसके अलावा, vi- संगत मोड में यह समस्या नहीं होगी क्योंकि esckeys उस मोड में बंद है - यही कारण है कि vim -u NONEकाम करता है।


बस स्पष्ट करने के लिए, 140k लाइन फ़ाइल के साथ मेरा "प्रयोग" प्लग-इन और फ़िल्टिप्स के मेरे मानक पूरक के साथ पूर्ण विम मोड में था। मैं देख सकता हूं कि आपने कहां निष्कर्ष निकाला होगा कि मैंने उपयोग किया है, -u NONEलेकिन हमारे पास अभी भी ओपी की पुष्टि नहीं है।
msw

वाह! वह थोड़ी देर के लिए परेशान था, लेकिन मैंने इसके बारे में कभी नहीं सोचा। अब सही समझ में आता है। Esc OA वास्तव में अप-एरो की तरह काम करता है।
विटाली कुशनर

2
:set noesckeysशायद वह नहीं है जो आप चाहते हैं - इसे सेट करें और फिर तीर कुंजियों को सम्मिलित करें मोड में दबाएं, भले ही आप उनका उपयोग करने की योजना न करें, आप उन्हें ऐसा करने के लिए नहीं चाहते हैं! noesckeys इन्सर्ट मोड के बाहर चीजों को गति नहीं देता है। ttimeoutlenनिश्चित रूप से जाने का रास्ता है
जोनिरा
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.