2012-05-23 10 views
18

मेरे पास टेक्स्ट की एक पंक्ति है जिसे मैंने yy पर रखा है। अब मैं कई अन्य स्थानों पर लाइनों को प्रतिस्थापित करने के लिए इस पाठ का उपयोग करना चाहता हूं। समस्या यह है कि जब मैं V को प्रतिस्थापित करने के लिए लाइन का चयन करता हूं, और p पेस्ट करता हूं, तो चयनित पाठ स्वचालित रूप से यंक हो जाता है! यही वह है जो मैं नहीं चाहता।चयनित पाठ पर चिपकाते समय पंजीकरण की सामग्री को कैसे बना सकते हैं?

रजिस्टर बदलना काम नहीं करता है, क्योंकि पेस्ट और यांक दोनों नए चुने हुए रजिस्टर के साथ किए जाते हैं।

चयनित टेक्स्ट पर चिपकाते समय रजिस्टर की सामग्री को रखने का आदेश क्या है?

+0

आप शायद पहले ही जानते हैं, लेकिन मुझे लगता है कि आप हमेशा 'pdd' के साथ समस्या के आसपास काम कर सकते हैं। – a3nm

+0

@ a3nm क्या आपका मतलब 'pyy' नहीं है, जो कि वर्तमान लाइन को फिर से कॉपी करेगा? –

+0

क्षमा करें, मेरा मतलब था 'pjdd'। यह कहा जा रहा है, मैं आपके सुझाव को समझ नहीं पा रहा हूं। – a3nm

उत्तर

15

प्रत्येक बार जब आप p डिफ़ॉल्ट रजिस्टर में जाते हैं तो प्रत्येक बार।

इस सुविधा के आसपास काम करने के लिए आपको "_, "ब्लैक होल रजिस्टर" का उपयोग करना होगा, इससे पहले कि आप p

vnoremap <leader>p "_dP 

यह चुनी गई सामग्री को हटा देता है और ब्लैक होल रजिस्टर में यह चला जाता है (इसका मतलब है कि चयनित पाठ हमेशा के लिए गायब हो जाता है) और में डिफ़ॉल्ट रजिस्टर की सामग्री कहते हैं: यहाँ मैं अपने ~/.vimrc में एक कस्टम मैपिंग है डिफ़ॉल्ट रजिस्टर को छोड़कर पहले चयनित टेक्स्ट की जगह बरकरार है।

मैं इसे अक्सर उपयोग करता हूं जब मुझे कुछ looooooong url के साथ कुछ स्थानों में loooooooong url को प्रतिस्थापित करने और s// को क्राफ्ट करना बहुत बोझिल होता है।

18

आपका मूल चयन 0 रजिस्टर में होना चाहिए। तो आप फ़ाइल के माध्यम से स्थानांतरित कर सकते हैं और अपनी yanked लाइन को अन्य लाइनों पर पेस्ट कर सकते हैं: V"0p

+4

इसके अलावा, वर्तमान रजिस्टर सामग्री को देखने के लिए 'reg' का उपयोग करें। [यह] (http://blog.dreasgrech.com/2010/06/vims-black-hole-register.html) ब्लैक होल रजिस्टर सहित रजिस्टरों का एक बहुत अच्छा स्पष्टीकरण है, और _kill buffer_ रजिस्ट्रार 0-9 । अंत में: 'मदद रजिस्टर', नाच। – pb2q

+0

यह बेहतर उत्तर है। ब्लैक होल रजिस्टर में हटाए गए सामग्री को भेजने की कोई आवश्यकता नहीं है जब पहले से ही एक रजिस्टर किया गया है जो विशेष रूप से यंक किए गए पाठ पर पकड़ने के लिए किया गया हो – rviertel

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

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