खोज…


परिचय - सामान्य मोड पर त्वरित नोट

सामान्य मोड में, आदेशों प्रत्यक्ष कुंजी संयोजन से प्रवेश किया जा सकता (यू टाइपिंग उदाहरण के लिए पिछले परिवर्तन को पूर्ववत करने,)। इन आदेशों में अक्सर 'पूर्व' मोड में समतुल्य होता है, जो एक बृहदान्त्र को टाइप करके एक्सेस किया जाता है : जो आपको विम विंडो के निचले हिस्से में सिंगल-लाइन बफर में छोड़ देता है।

'पूर्व' मोड में, कोलन टाइप करने के बाद आप कमांड को निष्पादित करने के लिए एंटर नाम या उसका संक्षिप्त नाम टाइप करेंतो,: undo सीधे सामान्य मोड में यू टाइपिंग के रूप में एक ही बात सिद्ध दर्ज करें।

आप देख सकते हैं कि सरल संपादन के लिए 'पूर्व' आदेशों की तुलना में प्रत्यक्ष कमांड अक्सर तेज (एक बार सीखे गए) होंगे, लेकिन पूर्णता के लिए, प्रलेखन में जो भी संभव हो, निम्नानुसार है, यदि दोनों उपयोग के लिए उपलब्ध हैं तो दोनों को दिखाया जाएगा।

इनमें से अधिकांश आदेशों को एक संख्या के साथ प्रीफ़िक्सिंग या चौराहे से पहले भी किया जा सकता है - सामान्य मोड में 3 डी टाइप करना , उदाहरण के लिए, तीन पंक्तियों को हटाता है (वर्तमान कर्सर स्थिति से शुरुआत)।

बेसिक पूर्ववत और फिर से करें

पूर्ववत करें

आदेश : विवरण
यू u , undo सबसे हालिया परिवर्तन पूर्ववत करें
5U पांच सबसे हालिया परिवर्तनों को पूर्ववत करें (किसी भी संख्या का उपयोग करें)

कृपया ध्यान रखें कि विम में, 'सबसे हालिया परिवर्तन' उस मोड के अनुसार होता है, जिसमें आप सम्मिलित होते हैं। यदि आप इन्सर्ट मोड ( i ) दर्ज करते हैं और सामान्य मोड ( Esc ) पर वापस जाने से पहले एक संपूर्ण पैराग्राफ टाइप करते हैं, तो वह पूरा पैराग्राफ होता है। सबसे हालिया बदलाव माना जाता है।

फिर से करें

आदेश : विवरण
Ctrl-R red , redo सबसे हालिया पूर्ववत बदलाव को फिर से करें
2Ctrl-आर दो सबसे हालिया पूर्ववत परिवर्तनों को फिर से करें (किसी भी संख्या का उपयोग करें)

विम में पूर्ववत और फिर से बदलाव का एक और तरीका है जिसे थोड़ा अलग तरीके से संभाला जाता है। जब आप यू के साथ बदलाव को पूर्ववत करते हैं, तो आप अपने परिवर्तनों के 'ट्री' पर नोड्स का बैक अप लेते हैं, और Ctrl-R दबाकर वापस उन नोड्स को क्रम में छोड़ते हैं। (पूर्ववत किया गया पेड़ एक अलग विषय है और यहां पर कवर करने के लिए बहुत जटिल है।)

आप एक लाइन (जहां आपके अंतिम परिवर्तन किए गए थे) पर सभी नवीनतम परिवर्तनों को हटाने के लिए यू (यानी अपरकेस) का उपयोग कर सकते हैं । यह पेड़ के नोड्स को उसी तरह से पार नहीं करता है जैसे यूयू का उपयोग करना वास्तव में एक बदलाव के रूप में गिना जाता है - पेड़ पर आगे एक और नोड - ताकि यदि आप यू को दूसरी बार दबाते हैं तो पहले के तुरंत बाद यह एक रेडो कमांड के रूप में कार्य करेगा।

प्रत्येक के पास इसके उपयोग हैं, लेकिन यू / : undo अधिकांश सरल मामलों को कवर करना चाहिए।

अंतिम परिवर्तन को दोहराएं

रिपीट कमांड, जिसे डॉट या पीरियड की ( ) के साथ निष्पादित किया जाता है, पहले दिखाई देने की तुलना में अधिक उपयोगी है। एक बार सीख लेने के बाद, आप अक्सर इसका उपयोग करते हुए खुद को पाएंगे।

आदेश : विवरण
आखिरी बदलाव को दोहराएं
10। अंतिम परिवर्तन 10 बार दोहराएं

तो, एक बहुत ही सरल उदाहरण के लिए, यदि आप निम्न परिणाम के साथ i I Esc टाइप करके लाइन 1 में बदलाव करते हैं:

1 I made a mistake
2  made a mistake
3  made a mistake

आपका कर्सर पंक्ति 1 की स्थिति 1 पर होगा, और अगली दो पंक्तियों को ठीक करने के लिए आपको बस j प्रेस करना होगा दो बार - यह है, जम्मू एक लाइन नीचे जाने के लिए और अंतिम परिवर्तन को दोहराने के लिए, जो I का जोड़ था। उन पंक्तियों को ठीक करने के लिए दो बार इन्सर्ट मोड में वापस कूदने की आवश्यकता नहीं है।

मैक्रों के दोहराए जाने पर इसका उपयोग अधिक शक्तिशाली हो जाता है।

कॉपी, कट और पेस्ट

विम में, इन ऑपरेशनों को लगभग किसी भी अन्य आधुनिक संपादक या वर्ड प्रोसेसर ( Ctrl-C , Ctrl-X , Ctrl-V ) में उपयोग किए जाने वाले से अलग तरीके से नियंत्रित किया जाता है। समझने के लिए, आपको रजिस्टरों और गतियों के बारे में थोड़ा जानना होगा।

नोट: यह खंड दृश्य मोड की नकल और कटिंग या रेंज को कवर नहीं करेगा क्योंकि ये सामान्य मोड और बुनियादी संपादन दोनों के दायरे से परे हैं।

रजिस्टर

विम खुद ही कार्यक्रम के भीतर घूम रहे पाठ को संभालने के लिए रजिस्टरों की अवधारणा का उपयोग करता है। इस उद्देश्य के लिए विंडोज में एक एकल क्लिपबोर्ड है, जो विम में एकल रजिस्टर के अनुरूप है। जब नकल, कटाई, और विम में चिपकाना, एक समान सरल संपादन वर्कफ़्लो का उपयोग करने के तरीके हैं (जहां आपको रजिस्टरों के बारे में सोचने की ज़रूरत नहीं है), लेकिन बहुत अधिक जटिल संभावनाएं भी हैं।

आदेश के साथ " और एक लोअरकेस अक्षर नाम उपसर्ग करके एक कमांड के इनपुट / आउटपुट के लिए एक रजिस्टर को लक्षित किया जाता है।

प्रस्ताव

विम में एक गति किसी भी कमांड है जो कर्सर की स्थिति को कहीं और ले जाती है। जब सामान्य मोड में कॉपी, कटिंग और पेस्ट किया जाता है, तो आंदोलन के लिए पाठ चयन की संभावनाएं केवल आपकी गति के ज्ञान द्वारा सीमित होती हैं। नीचे कुछ सचित्र होंगे।

नकल करना और काटना

बुनियादी कमांड कॉपी और कट ऑपरेशन्स y ('yank', कॉपी के लिए) और d ('डिलीट', कट के लिए) पर बनाए गए हैं। आप निम्न तालिका में समानताएं देखेंगे।

आदेश : विवरण
y {गति} प्रस्ताव ('यांक') पाठ को डिफ़ॉल्ट रजिस्टर में गति द्वारा दर्शाया गया है
Y y वर्तमान लाइन को डिफॉल्ट रजिस्टर, लाइनवेज़ में कॉपी करें
Y वर्तमान लाइन को डिफ़ॉल्ट रजिस्टर ( yy के लिए पर्यायवाची) में कॉपी करें
"ayiw जिस शब्द को कर्सर रजिस्टर में है उसे कॉपी करें 'a'
20 "byy बीस लाइनों की प्रतिलिपि, कर्सर से शुरू होकर, रजिस्टर 'बी' में
घ {गति} डिफ़ॉल्ट रजिस्टर में गति द्वारा संकेतित कट ('डिलीट') पाठ
dd वर्तमान लाइन को डिफॉल्ट रजिस्टर में काटें , लिनिविज़ करें
डी डिफ़ॉल्ट रजिस्टर में लाइन के अंत में कर्सर से कट ( dd के लिए एक पर्याय नहीं)
"adiw जिस शब्द को कर्सर रजिस्टर में है, उसे काटें 'a'
20 "BDD 'बी' रजिस्टर में, कर्सर से शुरू होने वाली बीस लाइनों को काटें

नोट: जब किसी चीज़ को कॉपी या कट किया जाता है , तो नीचे दिखाया गया पेस्ट व्यवहार करंट लाइन (कर्सर के बजाय) से पहले या बाद में टेक्स्ट को रखेगा। उदाहरण स्पष्ट करने के लिए अनुसरण करते हैं।

चिपकाने

विम में चिपकाने के कई तरीके हैं, जो आप को पूरा करने की कोशिश कर रहे हैं पर निर्भर करता है।

आदेश : विवरण
पी कर्सर के बाद डिफ़ॉल्ट रजिस्टर में जो कुछ भी है उसे पेस्ट करें
पी कर्सर से पहले डिफ़ॉल्ट रजिस्टर में जो कुछ भी है उसे पेस्ट करें
"एपी कर्सर के बाद रजिस्टर 'ए' की सामग्री को चिपकाएँ
"सी.पी. कर्सर से पहले रजिस्टर 'सी' की सामग्री को चिपकाएँ

तो, मैं वास्तव में सरल कट और पेस्ट कैसे कर सकता हूं?

यदि मेरे पास निम्न पाठ है:

1 This line should be second
2 This line should be first

मैं अपने कर्सर को लाइन 1 पर रखकर और ddp टाइप करके सबसे सरल कट-एंड-पेस्ट कर सकता हूं । यहाँ परिणाम हैं:

1 This line should be first
2 This line should be second

क्या हुआ? dd 'कटौती' पहली पंक्ति (linewise) डिफ़ॉल्ट रजिस्टर में - जो एक बार में केवल एक बात में शामिल होंगे, Windows क्लिपबोर्ड की तरह - और पी वर्तमान है, जो सिर्फ dd आदेश की वजह से बदल गया है के बाद लाइन चिपकाता है।

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

1 These words order out are of

मैं 'ऑर्डर' के सामने 'ओ' पर पहुंचने के लिए डब्ल्यू को दोहरा सकता हूं (या अगर मैंने इसे टाइप किया और अपनी गलती का एहसास हुआ तो बी )।

फिर "रजिस्टर 'एक' में 'ऑर्डर' भी डाल करने के लिए adaw।

फिर 'a' में ' w ' को पाने के लिए।

इसके बाद, मैं "bdaw to put 'को' register 'b' में टाइप करूंगा । अब मैंने इसे प्रदर्शित कर दिया है:

1 These words out of

स्पष्ट होने के लिए, अब 'ऑर्डर' रजिस्टर 'a' में है और 'are' रजिस्टर 'b' में है, जैसे दो अलग-अलग क्लिपबोर्ड।

शब्दों को सही ढंग से व्यवस्थित करने के लिए, मैं 'आउट' में 'o' को प्राप्त करने के लिए b टाइप करता हूं, और फिर "bP to put 'रजिस्टर से' b 'को' आउट 'के सामने रखता हूं :

1 These words are out of

अब मैं लाइन के अंत में जाने के लिए A टाइप करता हूं, उसके बाद Space Esc (यह मानते हुए कि '' के बाद कोई स्पेस नहीं था) और 'ap ' को 'ऑर्डर' डालने के लिए जहां वह है।

1 These words are out of order

समापन

पूर्णता का उपयोग किसी दस्तावेज़ में प्रयुक्त शब्दों से मेल खाने के लिए किया जा सकता है। शब्द टाइप करते समय, Ctrl p या Ctrl n दस्तावेज़ में पिछले या अगले समान शब्दों से मेल खाएगा।

यहां तक कि संपूर्ण लाइनों को पूरा करने के लिए इसे Ctrl-X मोड के साथ जोड़ा जा सकता है। उदाहरण के लिए कुछ टाइप करें:

This is an example sentence.

फिर अगली पंक्ति पर जाएं और उसी वाक्य को लिखना शुरू करें:

Thi

और फिर Ctrl p को हिट करें जिसके परिणामस्वरूप होगा:

This

अब भी इन्सर्ट मोड में, Ctrl x Ctrl p दबाएं और फिर अगला शब्द पूरा हो जाएगा:

This is

जब तक पूरी लाइन पूरी न हो जाए, तब तक Ctrl x Ctrl p को जारी रखें।

यदि आप जानते हैं कि आप इस पूरी लाइन को पूरा करना चाहते हैं:

This is an example sentence.

फिर अगली पंक्ति के प्रकार पर:

Thi

और लाइन को पूरा करने के लिए x Ctrl l दबाएं

यदि पूरा किया जा रहा है तो फ़ाइल नाम Ctrl x Ctrl f का उपयोग उस निर्देशिका को पूरा करने के लिए किया जा सकता है। प्रकार:

~/Deskt

फिर Ctrl x Ctrl f को हिट करें और:

~/Desktop

पूरा हो जाएगा (यदि उस स्थान पर)। Ctrl x Ctrl f का उपयोग डेस्कटॉप पर फ़ाइलों को सूचीबद्ध करने के लिए बार-बार किया जा सकता है।



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow