vim: पंक्ति के अंत तक सभी वर्ण बदलें


30

हो सकता है कि मैं बेईमान हो रहा हूं, लेकिन क्या आप उन सभी पात्रों को बदल सकते हैं जहां से कर्सर एक कमांड द्वारा लाइन के अंत तक है? फिर .अगली पंक्ति में उसी को बदलने के लिए उपयोग करें।

जवाबों:


49

अगर मुझे आपका प्रश्न ठीक से समझ में आ गया है, तो यह कोशिश करें:

C(यह एक पूंजी सी है) कर्सर के लाइन के अंत तक सब कुछ हटा देगा और आपको INSERT मोड में डाल देगा , फिर आप अपना प्रतिस्थापन लिखेंगे, INSERT मोड छोड़ देंगे, .प्रक्रिया को कहीं और दोहराने के लिए उपयोग करेंगे।


ठीक। :)आपका स्वागत है।
sr_

16
अगर किसी को आश्चर्य हो रहा था, तो यह एक राजधानी है :)
डेविड सिल्वा स्मिथ

1
यह निर्दिष्ट करने के लिए उत्तर को अद्यतन करने के लिए अच्छा होगा कि यह एक राजधानी सी है
फ्रैक्चर

14

Sr_ के उत्तर में जोड़ना:

यदि आपका कर्सर प्रत्येक पंक्ति पर एक ही स्थिति में शुरू होता है, तो आप विज़ुअल ब्लॉक सुविधा में दिलचस्पी ले सकते हैं।

प्रारंभिक स्थिति में अपने कर्सर के साथ निम्न क्रम में टाइप करें:

  • Ctrl+ v: दृश्य ब्लॉक मोड दर्ज करें।
  • $: पंक्ति के अंत में जाएं।
  • [X]j: X को उन लाइनों की संख्या से बदलें, जिन्हें आप नीचे जाना चाहते हैं।

यह आपके कर्सर से पहली पंक्ति पर जाने वाले एक आयताकार चयन को पंक्ति के अंत [X] लाइनों के अंत तक बनाना चाहिए।

फिर आप अपने पूरे चयन को बदल सकते हैं:

  • c: सेलेक्शन हटाएं और इन्सर्ट मोड में जाएं।
  • नया पाठ डालें
  • Esc: एक्ज़िट इन्सर्ट मोड; विम स्वचालित रूप से चयनित प्रत्येक पंक्ति पर कदम दोहराएगा।

मैं जब भी दृश्य ब्लॉक का उपयोग कर सकता हूं, मुझे लगा कि मैं साझा करूंगा


वास्तव में +1 अच्छा जवाब। लेकिन वास्तव में मैं क्या चाहता हूं क्योंकि कभी-कभी मेरा कोड अच्छी तरह से स्वरूपित नहीं होता है, ^ _ ~
सरदारथियन - मोनिका

@sardathrion; आरई टिप्पणी, 'अच्छी तरह से स्वरूपित'। मार्कडाउन में टेबल बनाने से मैं n+1लाइनों को रिक्त स्थान भरने में सक्षम हो गया , nविजुअल ब्लॉक द्वारा लाइन बनाने के बाद पीछे की ओर चयन किया गया ! दूसरे शब्दों में आकार 7 पीछे की ओर या ऊर्ध्वाधर फ़्लिप L के समान था, या 'अच्छी तरह से स्वरूपित नहीं'। जबरदस्त हंसी।
xtian

3

Cया c$"परिवर्तन" के लिए है और R"बदलें" के लिए है।

दो लगभग समान व्यवहार। टाइप करने से पहले पूर्व हटा दी गई पंक्ति मिल जाएगी; हालांकि बाद वाला आपको वर्णों पर टाइप करने देगा और संभवतः पुरानी पंक्ति के वर्णों की सीमा से आगे बढ़ेगा।


1

बस कमांड मोड में 'C' यानी कैपिटल C दबाएं और रिप्लेसमेंट टेक्स्ट टाइप करें।


0

अन्य जवाबों में ये छूट गए, वे इन्सर्ट मोड में नहीं आते

  • D लाइन के अंत तक हटाएं
  • d$ कर्सर से लाइन के अंत तक हटाता है

फिर जरूर इस्तेमाल करें .


-1 डालने के लिए मोड दर्ज न करें क्योंकि विशेष रूप से मैंने जो पूछा है। पूर्णता के लिए +1।
सरदाथ्रियन - मोनिका

0

जैसा कि यह उपयोगी हो सकता है, एक बार हम लाइन के अंत तक बदलने की कोशिश कर रहे हैं। मैंने इस कार्य को करने के लिए एक इंसर्टिंग मैपिंग बनाई है, इसका उपयोग नहीं Dकिया जाता है क्योंकि इन्सर्ट मोड में यह कुंजी इंडेंटेशन को कम करने के लिए उपयोग की जाती है। तो यह है Ctrl-k

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