मैं अपने कर्सर को लाइन को कॉपी करने के लिए एक लाइन नंबर का उपयोग कैसे कर सकता हूं?


20

बहुत बार मैं इसी तरह की स्थिति में हूं:

1. <Line 1>
2. <Line 2>
3. <Line 3>
4. <Cursor is here>
5. <I want to copy line 1 here>

एक आसान समाधान है mm:1<CR>yy`mp- वह यह है कि लाइन 4 पर एक निशान बनाएं, लाइन 1 पर जाएं, इसे कॉपी करें, निशान पर वापस जाएं, और पेस्ट करें।

क्या इससे कम / अधिक द्रव का समाधान होता है? मैं अक्सर ऐसा करता हूं कि मुझे इसके लिए मैपिंग करने में खुशी होती है।

जवाबों:


23

पूर्व कॉपी ( :help :coया :help :t) के लिए एक मामले की तरह लग रहा है :

:1t4

या, अपने कर्सर की स्थिति का उपयोग करके:

:1t.

यह लाइन को यैंक रजिस्टर में कॉपी नहीं करता है, जो आप चाहते हैं या नहीं हो सकता है।


मैं पूर्व कॉपी का उपयोग पर्याप्त नहीं करता हूं, अच्छा सुझाव।
जेकज़ो

10

आप निशान का उपयोग नहीं करके इसे छोटा कर सकते हैं और सीधे लाइन को यैंक कर सकते हैं।

:1y<CR>p

Yank का कमांड संस्करण {range}एक लाइन या लाइनों के समूह का चयन करता है।

इसके अतिरिक्त, रेंज मान या तो निरपेक्ष या सापेक्ष हो सकता है। कर्सर के ऊपर की रेखाएं नकारात्मक दूरी और नीचे सकारात्मक हैं। तो ऊपर दो रेखाएँ हैं :-2yऔर नीचे दो रेखाएँ हैं :+2y

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