2009-03-20 12 views
6

में पेस्ट मैं कुछ नक्शे का उपयोग करते समय मैं कोड:प्रदर्शित होने से अतिरिक्त कोष्ठक से बचने के लिए कैसे जब मैं विम

imap (()<C-[>i 
imap [ []<C-[>i 
imap { {}<C-[>i 
तो

कि जब मैं डाल "(", यह लिखते हैं "()" ("के लिए एक ही बात । [ "और" { ") समस्या यह है कि जब मैं विम में कुछ पेस्ट है:

for (i = 0; i < count; i++) { 
tab[i] = something() 
} 

मैं

for (i = 0; i < count; i++) { 
tab[i] = something() 
} 
)]}) 

क्या अतिरिक्त ब्रैकेट से बचना संभव है?

उत्तर

11

आप 'paste' विकल्प चाहते हैं; इसे :set paste के साथ सेट करें। यह सम्मिलित मोड मैपिंग, संक्षेप, और अन्य ऑटोफॉर्मेटिंग विकल्पों को अक्षम करता है। , <C-R>+

  • :a!
  • डालने मोड मध्य-क्लिक करें

    • "+p
    • :set mouse=a और फिर और फिर अपने टर्मिनल के पेस्ट आदेश का उपयोग करें:

      दूसरी बात वहाँ पेस्ट करने के लिए कई तरीके हैं कि है

    इनमें से सभी डब्ल्यू बीमार सही ढंग से पेस्ट करें। विम को भ्रमित करने वाला एकमात्र ऐसा होता है जब आप बिना किसी चेतावनी के अपने टर्मिनल के "पेस्ट" कमांड का उपयोग करते हैं।

  • +1

    धन्यवाद। यही वही था जो मैं चाहता था। अगर मैं अपने संक्षेपों को सक्षम करना चाहता हूं तो मुझे यह करना होगा: सेट अपोपस्ट –

    +0

    एक चीज जो मुझे करना है वह एक विकल्प टॉगल करने के लिए फ़ंक्शन कुंजी को बांधना है, जैसे 'मानचित्र : सेट पेस्ट!^एम'। इस अधिक पोर्टेबल है –

    +1

    आप लिखने के बजाय उपयोग कर सकते हैं (आप । के रूप में^एम टाइप करना होगा)^एम का उपयोग कर^वी,। आप निम्न मैपिंग का भी उपयोग कर सकते हैं: मानचित्र : सेट पेस्ट करें! पेस्ट करें? ताकि एफ 4 दबाए जाने के बाद आपको विकल्प की नई स्थिति दिखाई देगी। – Paul

    संबंधित मुद्दे