vi / vim में चिपकाने के बाद कर्सर की स्थिति


12

एक बात है कि मुझे हमेशा परेशान करता है में vi / vim :

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

उदाहरण के लिए, "कॉपी बफ़र" मानने से शब्द "भयानक" होता है जिसे मैं वाक्यांश में "ए" शब्द के बाद चिपकाना चाहता हूं:

This is an editor

उदाहरण के लिए , पेस्ट के बाद गेडिट :

This is an awesome editor
                  ^ Cursor is here

में vi :

This is an awesome editor
           ^ Cursor is here

क्या मैं इस संबंध में उदाहरण के लिए (उदाहरण के लिए) gitit के लिए vi बदल सकता हूं ?


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

क्षमा करें, कम से कम
एलेक्सी

जवाबों:


12

Vim, उपयोग में gpऔर gPके बजाय pऔर Pचिपकाया पाठ के बाद कर्सर को छोड़ने के लिए। यदि आप बाइंडिंग स्वैप करना चाहते हैं, तो निम्न पंक्तियाँ अपने में डालें .vimrc:

noremap p gp
noremap P gP
noremap gp p
noremap gP P

अजीब तरह से, विम में, pऔर Pएक चरित्र बफर के लिए पिछले चिपकाया चरित्र पर भी संगत मोड में कर्सर छोड़ दें।

मुझे नहीं पता कि अन्य vi संस्करणों में इसे कैसे बदलना है।


1
मुझे लगता है कि "vi" आमतौर पर सबसे अधिक विकृतियों में "विम" है, है ना?
जोएलफैन

@ जोएलफैन: अधिकांश गैर-एम्बेडेड लिनक्स डिस्ट्रोस, हो सकता है। अन्यत्र, नहीं। यदि आप विम-ओनली समाधान के साथ ठीक हैं, तो vi को नाटक में न लाएँ: 99% vim की विन्यासता बुनियादी vi में नहीं है।
गाइल्स का SO- बुराई होना बंद हो '

"एनवीआई" के बारे में क्या? मैं सभी अलग-अलग vi के बारे में उलझन में हूं। मैं ज्यादातर डेबियन और उबंटू में रहा हूँ
जोएलफैन

1
@JoelFan: nvi एक सुंदर मूल vi है, इसका उद्देश्य मूल कार्यान्वयन के साथ अनुकूलता और अधिक कुछ नहीं है। यदि आप केवल डेस्कटॉप इंस्टॉलेशन या सर्वर में रुचि रखते हैं जहां आप आसानी से प्रोग्राम इंस्टॉल कर सकते हैं, तो आप मान सकते हैं कि विम उपलब्ध है। कम vi कार्यान्वयन के साथ परिचित केवल लॉक-डाउन सर्वर और एम्बेडेड उपकरणों पर उपयोगी है।
गिल्स एसओ- बुराई को रोकना '

1
मैं ज्यादातर सर्वरों के लिए "vi" का उपयोग करता हूं, जहां मैं चीजों को स्थापित कर सकता हूं, हां
JoelFan

0

मुझे पूरा यकीन है कि यह डिज़ाइन द्वारा है। यदि आप "पी" (लोअर केस पी) का उपयोग करके पेस्ट करते हैं, तो वर्तमान स्थिति या लाइन के बाद पेस्ट करना चाहिए । हालांकि, यदि आप "पी" (पूंजी पी) का उपयोग करके पेस्ट करते हैं, तो यह वर्तमान स्थिति या रेखा से पहले चिपकाता है । यदि आपका वांछित व्यवहार कर्सर को आपके नए चिपकाया पाठ के अंत में होना है, तो "पी" के बजाय "पी" का उपयोग करने की आदत डालें।

मैं शर्त लगाता हूं कि यदि आप पर्याप्त गहराई से खोदते हैं, तो आप अपने .vimrc में डालने के लिए एक विम रेसिपी पा सकते हैं, जो हमेशा कर्सर को आपके पेस्ट के अंत तक ले जाएगा, भले ही आप "p" का उपयोग करें।


2
Pvi में चिपके हुए पाठ की शुरुआत में कर्सर को छोड़ देता है (कम से कम nvi और प्रति POSIX में)।
गिल्स एसओ- बुराई को रोकना '

पी और पी आसपास के पाठ के संबंध में सम्मिलित की स्थिति को प्रभावित करते हैं। वे स्वयं कर्सर की स्थिति को प्रभावित नहीं करते हैं जो कि सम्मिलित पाठ के सापेक्ष हमेशा उसी स्थिति में होता है।
ईएमबी
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.