
Vim मैक्रो सुविधा का उपयोग करके आप संपादक के अंदर कार्यों के अनुक्रम को रिकॉर्ड और प्ले कर सकते हैं।
यह लेख विस्तार से दो उदाहरणों का उपयोग करके Vi और Vim संपादक के अंदर रिकॉर्ड और प्ले करना कैसे करें, यह बताता है।
Vim के अंदर रिकॉर्ड और प्ले करने के उच्च-स्तरीय चरण
- q दबाकर रिकॉर्डिंग शुरू करें, उसके बाद मैक्रो का नाम रखने के लिए एक लोअरकेस वर्ण दबाएं
- Vim संपादक के अंदर कोई भी सामान्य संपादन, कार्य करें, जो रिकॉर्ड किए जाएंगे
- q दबाकर रिकॉर्डिंग बंद करें
- @ दबाकर उसके बाद मैक्रो नाम दबाकर रिकॉर्ड किए गए मैक्रो को प्ले करें
- मैक्रोज़ को कई बार दोहराने के लिए, दबाएं: NN @ मैक्रो नाम। NN एक संख्या है
उदाहरण 1: Vim मैक्रो का उपयोग करके फ़ाइल के अंदर अनुक्रम संख्या जनरेशन
1. अनुक्रम उत्पन्न करने के लिए एक sequence-test.txt फ़ाइल शुरू करें।
$ vim sequence-test.txt
2. इंसर्ट मोड में जाएं और नीचे दिखाए अनुसार "1 ." टाइप करें
टाइप करें: Esc i उसके बाद 1.
$ vim sequence-test.txt 1.
3. रिकॉर्डिंग शुरू करें और इसे रजिस्टर a में स्टोर करें।
टाइप करें: Esc q उसके बाद a
- q रिकॉर्डिंग शुरू करने का संकेत देता है
- a रिकॉर्डिंग को रजिस्टर a में स्टोर करने का संकेत देता है
- जब आप q a करते हैं, तो यह vi के नीचे "recording" प्रदर्शित करेगा।
4. पहली लाइन को दूसरी लाइन पर कॉपी करें ताकि 1 . के साथ दो लाइनें हों जैसा कि नीचे दिखाया गया है
टाइप करें: Esc yy उसके बाद p
- yy वर्तमान लाइन को कॉपी करेगा
- p अभी कॉपी की गई लाइन को पेस्ट करेगा
$ vim sequence-test.txt 1. 1.
नोट: Vim अभी भी नीचे दिखाए अनुसार रिकॉर्डिंग दिखाएगा।

चित्र: Vim नीचे रिकॉर्डिंग संदेश दिखा रहा है
5. संख्या बढ़ाएं।
टाइप करें: Control a
दूसरी लाइन पर कर्सर रखकर, Ctrl+a दबाएं जो संख्या को 2 तक बढ़ा देगा जैसा कि नीचे दिखाया गया है।
$ vim sequence-test.txt 1. 2.
नोट: vim अभी भी नीचे रिकॉर्डिंग दिखाएगा।
6. रिकॉर्डिंग बंद करें
टाइप करें: q
रिकॉर्डिंग रोकने के लिए q दबाएं। आप देखेंगे कि vim के नीचे रिकॉर्डिंग संदेश अब चला गया है।
7. रिकॉर्डिंग को 98 बार दोहराएं।
टाइप करें: 98@a
- अब इस काम को दोहराएं, 98 @ a टाइप करके
- @a मैक्रो "a" को एक बार दोहराता है।
- 98@a मैक्रो "a" को 98 बार दोहराता है, मैक्रोज़ का उपयोग करके अनुक्रम संख्या 1 - 100 उत्पन्न करता है जैसा कि नीचे दिखाया गया है।

चित्र: Vim मैक्रो का उपयोग करके Vim में अनुक्रम संख्या उत्पन्न करें
उदाहरण 2: विभिन्न तर्कों के साथ Vim मैक्रो दोहराएं
यह उदाहरण बताता है कि आप उसी कमांड को कैसे निष्पादित कर सकते हैं, लेकिन इसके लिए अलग इनपुट के साथ। यानी अलग-अलग तर्कों के साथ उसी कमांड को फ्रेम करना।
मैक्रो निष्पादित करने से पहले: change-password.sql
$ vim change-password.sql Annette Warren Anthony Preston Kelly Taylor Stiller Dennis Schwartz
रिकॉर्डिंग और मैक्रो निष्पादित करने के बाद: change-password.sql
$ vim change-password.sql ALTER USER Annette IDENTIFIED BY 'Annette'; ALTER USER Warren IDENTIFIED BY 'Warren'; ALTER USER Anthony IDENTIFIED BY 'Anthony '; ALTER USER Preston IDENTIFIED BY 'Preston'; ALTER USER Kelly IDENTIFIED BY 'Kelly '; ALTER USER Taylor IDENTIFIED BY 'Taylor'; ALTER USER Stiller IDENTIFIED BY 'Stiller'; ALTER USER Dennis IDENTIFIED BY 'Dennis'; ALTER USER Schwart IDENTIFIED BY 'Schwart';
1. change-password.sql खोलें जिसमें केवल नाम हों।
$ vim change-password.sql Annette Warren Anthony Preston Kelly Taylor Stiller Dennis Schwartz
2. रिकॉर्डिंग शुरू करें और इसे रजिस्टर a में स्टोर करें
टाइप करें: q a
- q रिकॉर्डिंग शुरू करने का संकेत देता है
- a रिकॉर्डिंग को रजिस्टर a में स्टोर करने का संकेत देता है
- जब आप q a करते हैं, तो यह vi के नीचे रिकॉर्डिंग संदेश प्रदर्शित करेगा।
3. इंसर्ट मोड में जाएं और ALTER USER टाइप करें
टाइप करें: I (अपरकेस i) उसके बाद "ALTER USER "
पहली लाइन में कहीं भी कर्सर रखें, और फिर I दबाएं। जो आपको लाइन के पहले वर्ण पर ले जाएगा। ALTER USER टाइप करें
4. अगला शब्द कॉपी करें (यानी नाम)
टाइप करें: Esc w yw
- Esc दबाएं, और फिर अगले शब्द (नाम) पर जाने के लिए w दबाएं।
- yw, वर्तमान शब्द (नाम) को कॉपी करता है।
5. अंत में जाएं और IDENTIFIED BY ' टाइप करें
टाइप करें: Esc A उसके बाद " IDENTIFIED BY '"
- Esc दबाएं, और लाइन के अंत में कर्सर ले जाने के लिए A दबाएं, और फिर स्पेस टाइप करें।
- IDENTIFIED BY ' टाइप करें
6. कॉपी किया गया नाम पेस्ट करें
टाइप करें: Esc p
Esc दबाएं, और फिर चरण #4 में कॉपी किए गए नाम को पेस्ट करने के लिए p टाइप करें।
7. अंत में उद्धरण पूरा करें।
टाइप करें: Esc A उसके बाद ';
Esc दबाएं, और लाइन के अंत में जाने के लिए A दबाएं, और ';
8. अगली लाइन पर जाएं और रिकॉर्डिंग बंद करें।
टाइप करें: Esc j उसके बाद q
- अगली लाइन पर जाने के लिए j
- रिकॉर्डिंग रोकने के लिए q
नोट: vi के नीचे दिखाया गया रिकॉर्डिंग संदेश अब गायब हो जाएगा। इस चरण में, change-password.sql निम्न जैसा दिखाई देगा।

चित्र: Vim मैक्रो ने रिकॉर्डिंग पूरी की
9. संबंधित लाइन में तर्कों के साथ मैक्रो दोहराएं
टाइप करें: 8 @ a
- अब इस काम को 8 बार 8@a टाइप करके दोहराएं
- @a मैक्रो "a" को एक बार दोहराता है।
- 8@a मैक्रो "a" को 8 बार दोहराता है, नीचे दिखाए अनुसार शेष लाइनों को स्वचालित रूप से पूरा करता है

चित्र: Vim मैक्रो प्ले पूरा हुआ
अनुशंसित पठन
Vim 101 Hacks, रमेश नटराजन द्वारा. मैं एक कमांड-लाइन जंकी हूं। इसलिए, स्वाभाविक रूप से मैं Vi और Vim संपादकों का बहुत बड़ा प्रशंसक हूं। कई साल पहले, जब मैं लिनक्स पर बहुत सारा C कोड लिखता था, मैं उपलब्ध सभी Vim संपादक टिप्स और ट्रिक्स पढ़ता था। अपने Vim संपादक अनुभव के आधार पर, मैंने Vim 101 Hacks ईबुक लिखी है जिसमें विभिन्न उन्नत Vim सुविधाओं पर 101 व्यावहारिक उदाहरण हैं जो आपको Vim संपादक में तेज और उत्पादक बनाएंगे। यहां तक कि अगर आप कई वर्षों से Vi और Vim संपादकों का उपयोग कर रहे हैं और इस पुस्तक को नहीं पढ़ा है, तो कृपया अपना उपकार करें और इस पुस्तक को पढ़ें। आप Vim संपादक की क्षमताओं से चकित होंगे।
बहुत बढ़िया Vim संपादक लेख
निम्नलिखित कुछ बहुत बढ़िया Vi / Vim संपादक ट्यूटोरियल हैं जो आपको उपयोगी लग सकते हैं।
- Vimperator ऐड-ऑन का उपयोग करके फ़ायरफ़ॉक्स ब्राउज़र को Vim संपादक कार्यक्षमता के साथ टर्बोचार्ज करें
- ट्यूटोरियल: c.vim प्लगइन का उपयोग करके Vim को अपना C/C++ IDE बनाएं
- किसी भी प्रोग्रामिंग भाषा के लिए Vim संपादक को सुंदर सोर्स कोड ब्राउज़र में बदलें
- Vim संपादक के लिए 12 शक्तिशाली फाइंड और रिप्लेस उदाहरण
नोट: कृपया The Geek Stuff को सब्सक्राइब करें और भविष्य के किसी भी Vi और Vim संपादक टिप्स और ट्रिक्स को न चूकें।