2009-01-22 6 views
13

के एक हिस्से में पेस्ट करते समय मुझे लगता है कि अन्य संपादक चिपकने के लिए उस सामान को बंद करने के लिए पर्याप्त स्मार्ट हैं लेकिन टर्मिनल में विम का उपयोग करते समय यह पेस्टिंग के बीच अंतर नहीं कर सकता है और वास्तविक टाइपिंगविम (सामान्यतः महान) में स्मार्ट इंडेंटिंग एक आपदा है जब कोड

इसके लिए आपके पास किस प्रकार के समाधान या कामकाज हैं?

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

उत्तर

21

: सेट पेस्ट जाने का रास्ता है, लेकिन यदि आप भूल जाते हैं, के रूप में मैं अक्सर करते हैं, तो यदि आप ब्लॉक के खोलने/बंद करने के रूप में} के साथ {एक भाषा का प्रयोग कर रहे हैं, तो कर रही है पहले {या अंतिम} पर = =% इंडेंटिंग को फिर से लागू करेगा।

+1

=% के साथ अच्छी चाल। मैं भूल गया = श्रेणियों पर काम करता है। – strager

+0

यह वास्तव में किसी भी भाषा प्लगइन के साथ काम करता है जो सही ढंग से ब्लॉक को परिभाषित करता है - उदाहरण के लिए, रूबी इसे 'एंड' से कर सकता है। –

15

: सेट पेस्ट

+1

: सेट अपोपस्ट - –

+0

ओह हो पर इंडेंटिंग को चालू करने के लिए, धन्यवाद। तो आपको चिपकाने से पहले और बाद में इसे सेट करना और इसे अनसेट करना याद रखना होगा? मुझे लगता है कि पेस्टिंग और टाइपिंग को अलग करने के लिए प्रोग्रामेटिक तरीके से कुछ भी स्वचालित स्वचालित नहीं है। – dreeves

+0

आप कुंजी मैपिंग का उपयोग कुंजी के सेट पर बांधने के लिए कर सकते हैं। लेकिन मैंने कभी कोशिश नहीं की है। http://www.shlomifish.org/lecture/Vim/beginners/slides/slide30.html –

7

अपने .vimrc में जोड़ने और F2 कुंजी के साथ उपयोग करने से पहले पेस्ट स्थिति टॉगल करने के लिए और आप के बाद कोड की मात्रा में जोड़ें:

+0

आप '\' 'में कोड संलग्न करना भूल गए हैं। – ZyX

+0

यह अभी तय है;) – kguest

1

एक और तरीका है यह करने के लिए, यह सोचते हैं कि आप अपने सिस्टम क्लिपबोर्ड है

"*p 

यह सिस्टम क्लिपबोर्ड से पेस्ट करेगा।

अपने vim --version देखें। ओएस एक्स पर आपको +clipboard और लिनक्स +xterm_clipboard पर, मुझे विश्वास है।

आप ओएस एक्स पर हैं, तो आप हमेशा brew install macvim और बंडल विम (यह +clipboard साथ संकलित नहीं किया गया था) के बजाय mvim -v उपयोग कर सकते हैं।

+0

यह मैक ओएसएक्स पर xterm में मेरे लिए काम नहीं कर रहा है। – dreeves

+0

अपने vim --version की जांच करें। + xterm_clipboard या + क्लिपबोर्ड के लिए देखो। मैं एमवीआईएम-वी का उपयोग करता हूं। मेरे पास -xterm_clipboard है लेकिन + क्लिपबोर्ड और यह ठीक काम करता है। –

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