विम में हाइलाइट किए गए टेक्स्ट के आसपास कोष्ठक जोड़ना


14

क्या विम में एक कार्यक्षमता है जो हाइलाइट किए गए पाठ के चारों ओर कोष्ठक को जोड़ने की अनुमति देती है?

उदाहरण के लिए, अगर मैं पर प्रकाश डाला n = getchar()में if (n = getchar() == '\n'), मुझे लगता है कि चारों ओर कोष्ठक डाल करने के लिए चाहते हैं।

जवाबों:


18

आप एक भयानक और चारों ओर प्लगइन की जरूरत है । फिर, यह खुशी से वही करेगा जो आप चाहते हैं यदि आप पाठ और प्रकार Sb(सराउंड-ब्रेसेस) का चयन करें , या S)(राजधानी एस! पर ध्यान दें)।

: विभिन्न उद्धरण, टैग, आदि यह आप डबल-कोटेड शब्द में कर्सर रखें और टाइपिंग द्वारा एकल उद्धरण को दोहरे उद्धरण चिह्नों को बदलने के लिए अनुमति देता है: यह वास्तव में आसपास के एक बहुत कुछ कर सकते cs"'(परिवर्तन चारों ओर "करने के लिए ')। या आप पूरी तरह से उद्धरण हटा सकते हैं ds"(हटाना-घेरना ")।

डॉक्स को लिंक द्वारा पढ़ें, यह वास्तव में बहुत बढ़िया है!


1
आपने यह नहीं बताया कि इसे चयन के साथ कैसे किया जाए। मुझे यहां नेतृत्व मिला क्योंकि यह तुरंत स्पष्ट नहीं था।
जैकहैसकेबोर्ड

@JackHasaKeyboard, आपको क्या मतलब है कि मैंने यह नहीं बताया कि इसे चयन के साथ कैसे किया जाए? मेरे जवाब में दूसरा वाक्य कहता है:> फिर, यह खुशी से वही करेगा जो आप चाहते हैं कि आप पाठ और प्रकार का चयन करेंsb (चारों ओर-ब्रेसिज़), या s)
दिमित्री फ्रैंक

1
तो आपने किया। हालांकि मेरे लिए काम नहीं कर रहा है, sबस मारना चयन को हटा देता है और सम्मिलित मोड में प्रवेश करता है।
जैकहैसकेबोर्ड

1
इसका मतलब है कि मेरे उत्तर में वर्णित "सराउंड" प्लगइन सही ढंग से स्थापित नहीं है।
दिमित्री फ्रैंक

Awsome वास्तव में। मैं इसे थोड़ी देर के लिए इस्तेमाल कर रहा हूं और शर्त लगा सकता हूं।
बायोकैम्बरमैन

20

चारों ओर प्लगइन के दिमित्री के सुझाव के मद्देनजर , हाइलाइट किए गए पाठ के चारों ओर कोष्ठक जोड़ना निम्नलिखित आदेश के साथ किया जा सकता है:

xi()<Esc>P

आप \sअपनी ~/.vimrcफ़ाइल में निम्न जोड़कर (उदाहरण के लिए) दृश्य मोड में एक मानचित्र सेट कर सकते हैं :

xnoremap <leader>s xi()<Esc>P

1
यह एक अच्छा और सरल उपाय लगता है। अगर मुझे भविष्य में इसके साथ कोई समस्या नहीं है, तो मैं इसे अतिरिक्त प्लगइन्स पर पसंद करूंगा। धन्यवाद!

3
यह एक अच्छा समाधान है, लेकिन चारों ओर प्लगइन का उपयोग करने के रूप में काफी पूरा नहीं है क्योंकि यह काम नहीं करता है यदि आप पूरी लाइनें ( Vइसके बजाय का उपयोग करके v) का चयन कर रहे हैं । इस मामले में यह सिर्फ आपके परनों के नीचे की रेखाओं को चिपकाता है।
रोहन ऑर्टन

1

lh- कोष्ठक बस कोष्ठक के( साथ चयन को घेरने के लिए बांधता है। चारों ओर के विपरीत यह सामान्य कीबाइंडिंग दर्शन का पालन नहीं करता है जैसा कि करता है। इसके बजाय कम चाबियों की आवश्यकता होती है।

अन्यथा, आगे बढ़ने के कई तरीके हैं। यदि आप अनाम रजिस्टर में गड़बड़ी नहीं करते हैं, तो आप भी उपयोग करते हैं s(^R")<esc>( ^Rजैसे CTRL-R)


0

Dotancohens जवाब पर बिल्डिंग, मैं अपने में डाल दिया .vimrc:

xnoremap <leader>( <ESC>`>a)<ESC>`<i(<ESC>

आप आसानी से [], {}, आदि के लिए समान मैपिंग कर सकते हैं। यह दृश्य मोड को समाप्त करने के बाद आरंभिक और अंत मार्करों पर छलांग लगाकर काम करता है। इस तरह से पूरी पंक्तियों का चयन पहली / अंतिम पंक्ति के प्रारंभ / अंत में Parens को जोड़ देगा; यह आपके यैंक रजिस्टर को अधिलेखित नहीं करेगा; और यह खोलने वाले पेरेन से ठीक पहले कर्सर को छोड़ देगा।

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