मैं जिस शब्द को टाइप कर रहा हूं उसे कैसे कॉपी कर सकता हूं? (बिना मोड स्विच…)


4

कभी-कभी मैं एक शुरुआती चिह्न सेट करना चाहता हूं तो एक शब्द टाइप करें (आमतौर पर एक लंबा चर नाम), शब्द को समाप्त करने के बाद मैं एक समाप्ति चिह्न सेट कर सकता हूं। फिर मैं अपने रजिस्टर में संग्रहीत शब्द प्राप्त कर सकता हूं ताकि मैं इसे बिना किसी अतिरिक्त आंदोलन, मोड स्विच आदि के पेस्ट कर सकूं।

मैं कैसे कर सकता हूँ? या समान प्रभाव प्राप्त करने के लिए एक बेहतर "वीम-वे" है?

धन्यवाद।

जवाबों:


2

निम्नलिखित दो मैपिंग आपको पाठ का कोई भी हिस्सा रिकॉर्ड करने की सुविधा देते हैं, जो जरूरी नहीं कि एक शब्द भी हो, और इसे रजिस्टर में सहेजें o

inoremap <C-K> <C-O>qo
inoremap <C-L> <Esc>q:let @o=@o[:-2]<CR>a

के साथ रिकॉर्डिंग शुरू CtrlK, अंत रिकॉर्डिंग के साथ CtrlL। दर्ज किए गए पाठ को सम्मिलित मोड में चिपकाएँ CtrlR o


यह वही है जो मैं चाहता हूं। धन्यवाद। विम स्क्रिप्ट इतनी शक्तिशाली लगती है। मैं वह सीखने की कोशिश करूंगा।
शिल्पकार.दोन

4

में सम्मिलित करें मोड में, आप उपयोग कर सकते हैं Ctrl-Nया Ctrl-Pस्वत: पूर्ण करने को गति प्रदान करने।
जब आप लंबे शब्दों को फिर से टाइप कर रहे हों तो यह बहुत उपयोगी है।


:help i_ctrl-nअधिक जानकारी के लिए देखें । आपको completeविकल्प भी ट्यून करने की आवश्यकता हो सकती है; मेरे लिए मुझे iइसे उतारना पड़ा क्योंकि यह हजारों फ़ाइलों के साथ बहुत धीमा है, जिसमें सभी परिपत्र शामिल हैं ...
डैश-टॉम-बैंग

मुझे सुपरटैब प्लगइन पसंद है। हम इतनी स्वचालित रूप से bash / zsh में टैब दबाने के आदी हैं, यह एक विम बफर में भी स्वाभाविक लगता है।
d11wtq

2

का उपयोग करें mऔर y

  1. टाइप Ctrl+ O(1 कमांड के लिए एक्जिट इंसर्ट मोड)
  2. अपने वर्तमान स्थान पर mkमार्कर सेट करने के लिए टाइप करेंk
  3. अपना शब्द लिखें
  4. टाइप Ctrl+ करेंO
  5. y`kमार्कर kसे अपने वर्तमान स्थान पर यान करने का प्रकार

http://www.marksanborn.net/software/using-markers-in-vim/


1
हालांकि यह डालने मोड से बाहर छोड़ने की आवश्यकता है। एक और तीन चरणों से पहले Ctrl-O का उपयोग करना आपको लगभग वहीं मिलता है; एकल उद्धरण के बजाय एक बैकटिक का उपयोग करने से एक भाग-रेखा यांक होगी।
डैश-टॉम-बैंग

वूप्स, वह एक टाइपो (बैकटिक) था। मैं दोनों सुझावों के साथ पोस्ट को अपडेट

0

के साथ <C-o>, आप अस्थायी रूप से एक कमांड के लिए इन्सर्ट मोड छोड़ सकते हैं। फिर आप एक yiwकमांड (यार्क इनर वर्ड) जारी कर सकते हैं , और आपके पास डिफ़ॉल्ट (या आपके द्वारा निर्दिष्ट किसी भी अन्य "x) रजिस्टर में अंतिम शब्द है ।

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