2013-07-10 13 views
12

मैं विम के लिए बिल्कुल नया हूं। आज रात, मैंने "यांक" कमांड के बारे में सीखा, लेकिन जब मैं इसे मैकवीम में उपयोग करने का प्रयास करता हूं, तो यह कुछ भी नहीं करता है। न तो Y और न ही y{motion} कुछ भी करें। मैंने किसी भी अजीब कॉन्फ़िगरेशन समस्याओं को रद्द करने के लिए डिफ़ॉल्ट .vimrc के साथ प्रयास किया।विम "यांक" काम नहीं करता

Google-fu मुझे विफल कर रहा है। यह नोबई मुद्दे की तरह लगता है। क्या मुझसे साफ़ - साफ़ कुछ चीज़ चूक रही है?

+0

क्या 'Y' क्या करता है? क्या आपका मतलब 'y' था? – icedwater

+0

@icedwater: 'Y'' yy' के लिए समानार्थी है। – Amadan

+1

आह, धन्यवाद @ अहमदन - मैं इसका कभी भी उपयोग नहीं करता क्योंकि 'yy' मेरे लिए शिफ्ट कुंजी पर जाने से कहीं अधिक तेज़ है। हालांकि जानना अच्छा है। – icedwater

उत्तर

19

y ank अपने आप में केवल प्रतियां एक क्लिपबोर्ड में लाइन - आप p aste के लिए यह अगली पंक्ति पर या P एक घटता की नकल की लाइन का उपयोग करने पर की आवश्यकता होगी। लाइन को काटने के लिए, d एलीट का उपयोग करें।

+0

वाह, मैं मूर्ख हूँ। मैंने सोचा कि "यंक" ने वास्तव में रेखा को हटा दिया और इसकी प्रतिलिपि बनाई। उह, मुझे विश्वास नहीं है कि मैंने बस इस पर एक घंटे बर्बाद कर दिया। धन्यवाद @icedwater! –

+2

कोई समस्या नहीं, आप उस मामले में 'd'elete की तलाश करेंगे। – icedwater

+0

@AdamRubin - और यदि आप ** ** ** ** ** के बजाय ** ** कट और पेस्ट करना चाहते हैं तो आप यंक को छोड़ सकते हैं ... – jahroy

5

यह कुछ भी नहीं करता दृश्य - अन्य संपादकों में Ctrl-C (संपादित/प्रतिलिपि) की तरह। इसके बाद p (पेस्ट) कमांड को आज़माएं - यह दस्तावेज़ में जो कुछ भी था, उसे रखने के लिए Ctrl-V के बराबर है।

4

यांक कमांड एक क्लिपबोर्ड में पाठ खींचता है। उदाहरण के लिए yy बस सामान्य क्लिपबोर्ड में वर्तमान लाइन को जोड़ता है। आप p के साथ क्लिपबोर्ड की सामग्री को "पेस्ट" कर सकते हैं। आप नामक बफर नामक "ayw जैसे किसी भी शब्द को वर्तमान स्थिति से पाठ को a नामक बफर में बदलने के लिए yank कर सकते हैं। मेल खाता "ap है।

+0

हां, यही वह है जो मैं * उम्मीद कर रहा हूं *, लेकिन जब मैं इसका उपयोग करने की कोशिश करता हूं, तो यह * कुछ * नहीं करता है। मैं इसे सामान्य मोड में उपयोग करने की कोशिश कर रहा हूं। –

0

यदि आप उबंटू या मिंट का उपयोग करते हैं तो मेरे लिए काम करने वाला एकमात्र समाधान विम को अनइंस्टॉल करना था और इसके बजाय पैकेज "vim-gnome" इंस्टॉल करना था। तब पंक्ति जोड़कर:

सेट क्लिपबोर्ड = unnamedplus

मेरी .vimrc को

काम अपेक्षा के अनुरूप।

+0

'unnamedplus' केवल लिनक्स पर काम करता है। ओएसएक्स 'अज्ञात' –

4

यदि आपके पास सेटिंग .vimrc में है तो यह काम नहीं करेगा।

लिए OSX आप तो आप शायद से set clipboard=unnamedplus

यहाँ टुकड़ा का उपयोग करने की आवश्यकता होगी set clipboard=unnamed

लिनक्स के लिए उपयोग करने के लिए मेरे निजी .vimrc

if system('uname -s') == "Darwin\n" 
    set clipboard=unnamed "OSX 
else 
    set clipboard=unnamedplus "Linux 
endif 
+1

का उपयोग करता है धन्यवाद, यहां ओएसएक्स चला रहा है, आपकी नोक ने समस्या हल की है। – Niloct

+1

मै मैक और लिनक्स में वही '.vimrc' साझा करना चाहता हूं - क्या कॉन्फ़िगर के अंदर कुछ 'IF' जोड़ना संभव है? ठीक है मुझे http: // stackoverflow मिला।कॉम/प्रश्न/2842078/कैसे-करें-i-detect-os-x-in-my-vimrc-file-so-fixed-configurations-will-only-apple –

+0

@VitalyZdanevich, हाँ पूछने के लिए धन्यवाद। मैंने अपनी व्यक्तिगत कॉन्फ़िगरेशन से स्निपेट के साथ उत्तर अपडेट किया है। –

संबंधित मुद्दे