VIMRC फ़ाइल में स्वचलित सेटिंग्स को अनुकूलित करें


2

मैं अपने .vimrc फ़ाइल में स्वतः सक्षम है, लेकिन एक कष्टप्रद बग / सुविधा में चला गया हूं। उदाहरण के लिए, जब मैं 3 बार टैब कर रहा होता हूं, और मैं रिटर्न मारता हूं, तो नई लाइन भी 3 बार में टैब की जाती है। फिर जब मैं फिर से प्रवेश करता हूं, तो उस नई लाइन को भी 3 बार इंडेंट किया जाता है, जैसा कि यह होना चाहिए। समस्या तब होती है जब मैं पिछली पंक्ति (2 नई लाइनों में से पहली) पर वापस जाता हूं। वीआईएम स्वचालित रूप से व्हाट्सएप को हटा देता है क्योंकि उसने इसे एक खाली रेखा के रूप में देखा था।

क्या ऐसा होने से अक्षम करने का कोई तरीका है? मैं इस तरह से कोडिंग करने में सक्षम होना चाहता हूं:

समारोह परीक्षण () { <return> <return>}<up> <right>

धन्यवाद!

जवाबों:


2

मैं किसी भी विकल्प की स्थापना के बारे में नहीं जानता जो विम को प्रमुख व्हाट्सएप के साथ स्वचालित रूप से उन पंक्तियों को छोड़ देगा। सामान्य समाधान अपनी संपादन शैली को बदलना है ताकि आप उस व्हाट्सएप को न खोएं, या एक सामान्य-मोड कमांड का उपयोग करें o, Oया Sएक नई लाइन शुरू करने के लिए ताकि इंडेंटिंग स्वचालित रूप से किया जाए, या वर्तमान पर इंडेंट करने के लिए मजबूर करें। के साथ सम्मिलित मोड में लाइन Ctrl-Tया Ctrl-F

हालांकि, यदि आप वास्तव में उस विशेष कुंजी अनुक्रम का उपयोग करना चाहते हैं और अपनी इंडेंटिंग नहीं खोते हैं, तो मुझे लगता है कि यह मैपिंग काम करेगी।

:inoremap <Return> <Space><BS><Return>

लाइन पर एक स्थान (या कोई भी वर्ण) डालकर, फिर उस पर बैकस्पेसिंग करते हुए, आप विम को बता रहे हैं कि यह एक गैर-रिक्त रेखा है और यह अग्रणी व्हाट्सएप को अकेला छोड़ देगा।


1

<रिटर्न> या <सीआर> को रीमैप करना बहुत अच्छा लगता है। इसका एक नकारात्मक पहलू है: यह विम के ऑटो-पूर्ण (<Cn>) का उपयोग करने के लिए कठिन बनाता है। यह उन प्लगइन्स के साथ भी टकराता है जो डिफ़ॉल्ट व्यवहार पर निर्भर करते हैं, उदाहरण के लिए सुपरटैब

यह पृष्ठ: http://vim.wikia.com/wiki/Get_the_correct_indent_for_new_lines_despite_blank_lines एक वैकल्पिक समाधान प्रदान करता है: रिक्त रिक्त लाइनों के माध्यम से उचित इंडेंट प्राप्त करने के लिए एक फ़ंक्शन जोड़ना।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.