बस अगर कोई भविष्य में इस पर फंसे हुए हैं, तो मेरे पास एक वैकल्पिक तरीका है कि मैं का उपयोग करता हूं जो (मुझे लगता है) दुर्लभ अवसर पर याद रखना आसान है कि किसी को मैन्युअल रूप से कुछ लाइनों को पैड करने की आवश्यकता होगी।
इनपुट पाठ:
Here are some words
They do not have equal length
I want to insert characters after them until column 40
How to do?
आप क्या टाइप करें:
gg // Position cursor anywhere on first line you want to pad
q1$40A-<Esc>d40|q // Looks more complex than it is.
// Here, in English:
// 1. Record a macro in slot 1
// 2. Go to the end of the line, then *A*ppend a '-' 40 times
// 3. Delete from cursor position (which is still at the end of the line) to column 40
// 4. Stop recording
:1,4normal @1 // Repeat macro "1" for every line
आउटपुट पाठ:
Here are some words-----------------
They do not have equal length-------
I want to insert characters after t-
How to do?--------------------------
उम्मीद है कि आप पता लगा सकते हैं कि कैसे करने के लिए आदेश के विभिन्न भागों को समायोजित करने के इसे वही करें जो आप चाहते हैं। नोट टेक्स्ट जो आपकी वांछित कॉलम अवधि से अधिक लंबा है, को छोटा कर दिया जाएगा (लाइन 3 पर प्रदर्शित)।
स्रोत
2016-09-09 04:34:26
+1 मैंने उस चीज़ को पढ़ा और सोचा कि 'काम नहीं करेगा' लेकिन निश्चित रूप से पर्याप्त ... – bmb
O_o। वास्तव में तीन कीस्ट्रोक समाधान की उम्मीद नहीं थी;) मैं ज्यादातर जो कर रहा हूं वह आपको मिलता है, लेकिन शुरुआत में \ v क्या करता है? इसके अलावा, उस प्रतिस्थापन को क्यों चल रहा है सिंटैक्स रंग nuke? –
\ v रेगेक्स की शुरुआत में सभी विराम चिह्न विशेष बनाता है; मैं आदत से बाहर करता हूं इसलिए मुझे याद रखना नहीं है कि क्या विशेष है और क्या नहीं है। यह वाक्यविन्यास को हाइलाइट नहीं करना चाहिए, जब तक कि अतिरिक्त डैश अमान्य वाक्यविन्यास न हों? स्क्रीन को फिर से निकालने के लिए ctrl-L आज़माएं। – Eevee