क्या कोई एकल वर्ण सम्मिलित करने का तरीका है और फिर सम्मिलित रूप से बाहर निकलें?


10

जब मैं पाठ के माध्यम से जा रहा हूँ और, उदाहरण के लिए, कुछ शब्दों या उद्धरणों के आसपास या जो कुछ भी जोड़ रहा हूं, तो यह परेशान है कि मुझे प्रत्येक डालने के बाद Esc या Ctrl- [दबाना है। आवेषण (और append) अलग हैं, इसलिए .बहुत मदद नहीं करता है।

क्या rकिसी एकल वर्ण के बाद सामान्य मोड में वापसी के समान कुछ है- लेकिन बदले मोड के बजाय सम्मिलित मोड का उपयोग करता है?


3
पाठ पर अधिक सार्थक तरीके से काम करने के लिए, आपको विम-सराउंड प्लगइन का उपयोग करने (या विस्तार) पर विचार करना चाहिए ।
वनलेसर

जवाबों:


11

अगर वहाँ नहीं है (मैंने देखा नहीं है), तो आप इस मानचित्रण का उपयोग अपने में कर सकते हैं .vimrc:

nnoremap <C-I> i <ESC>r

यह iएक स्थान, ESCवानर को रखता है , और एक एकल अक्षर replace शुरू करता है । इससे मैप हो जाता है CtrlI

यह एक हैक है, और यदि आप एक पत्र टाइप करने से पहले भागने से बचते हैं, तो एक लटकती जगह छोड़ देंगे - लेकिन यह कुछ भी नहीं से बेहतर है!


1
बुरा नहीं है ... मैं शायद इसका उपयोग करूंगा कि अगर कोई भी कुछ भी बेहतर नहीं करता है। :)
वाइल्डकार्ड

2
@Wildcard मुझे एहसास नहीं हुआ कि मैं वास्तव में इस उपयोग के मामले में इसे साकार किए बिना कितना चल रहा हूं। अच्छा सवाल :) मैंने इसे अपने खुद के vimrc में भी जोड़ा है।
Qix - MONICA WAS MISTREATED

2
मैंने दिन का अधिकांश समय मार्कशीट का एक गुच्छा तय करने में बिताया। इटैलिक, इनलाइन कोड, हेडर इंडेंटेशन, हाइपरलिंक ... ये सभी एक कैरेक्टर इंसर्ट करते हैं। :) वास्तव में आपका समाधान एकदम सही है; मैं अब इसका उपयोग शुरू करने जा रहा हूं।
वाइल्डकार्ड

2
नुकसान: यह .कमांड के साथ दोहराने योग्य नहीं है । :(
वाइल्डकार्ड

1
दुर्भाग्य से, कुछ शोध करने के बाद, .जब तक आप उपयोग नहीं कर रहे हैं , तब तक मैन्युअल रिपीट शाखा बनाने का कोई तरीका नहीं है repeat.vim
Qix - MONICA WAS

0

एक शब्द के अंत में (कर्सर स्थिति पर) के बजाय एक चार सम्मिलित करने के लिए, का उपयोग करें

nnoremap <C-a> a <ESC>r

यह करने के लिए नक्शे Ctrl + a, आप इसे पाठ्यक्रम के किसी भी अन्य करने के लिए मैप कर सकते हैं।

मैं अपने दोनों में .vimrcबस इतना है कि मैं बहुत हलचल नहीं है :)

" Insert char at cursor position
nnoremap <C-i> i <ESC>r
" Append char after cursor position
nnoremap <C-a> a <ESC>r
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.