vim और सिस्टम क्लिपबोर्ड


9

मैं मध्य बटन या शिफ्ट-इंसर्ट के साथ टेक्स्ट को कॉपी, पेस्ट कर सकता हूं।

मैं टेक्स्ट को विम में कैसे कॉपी कर सकता हूं और सिस्टम क्लिपबोर्ड से पेस्ट कर सकता हूं?


कभी-कभी मैं sed -n5,10p5-10 पंक्तियों को प्रिंट करने के लिए उपयोग करता हूं ताकि मैं माउस पर प्रतिक्रिया किए बिना अधिक आसानी से कॉपी और पेस्ट कर सकूं।
अनुदान

वास्तव में अंदर से कमान की तरह दिखता है:!sed -n 5,10p %
अनुदान

सभी टिप्पणियों और उत्तरों के लिए धन्यवाद। x कभी-कभी उपयोगी होता है, धन्यवाद @ sergiy-kolodyazhnyy। जब मैं विभिन्न मशीनों पर काम करता हूं तो मेरा कभी-कभी नियंत्रण नहीं होता है कि किस विम पर स्थापित किया गया है, लेकिन @muru के उत्तर की जांच करने के निर्देश सहायक हैं, धन्यवाद @ ashutosh-tripathy। मुझे जरूरत पड़ने पर उन्हें याद रखने के लिए विम रजिस्टर कमांड का अधिक बार उपयोग करना होगा। जैसा कि मैंने ऊपर दिए गए प्रश्न में उल्लेख किया है, अगर मैं इसे जल्दी से करना चाहता हूं और फ़ाइल छोटा है, तो vim के अंदर कमांड ऐसा दिखता है:!cat %
15'18 को अनुदान

जवाबों:


12

आप के साथ विम की आवश्यकता है clipboardऔर xtermclipboardमें। में उबंटू संकलित सुविधाओं, इन vim जीयूआई पैकेज (साथ ही उपलब्ध हैं vim-gnome, vim-gtk, vim-athena, आदि)।

एक बार जब आप इनमें से एक को स्थापित करते हैं, तो आप क्लिपबोर्ड रजिस्टरों ( *और +) से कॉपी (और पेस्ट) कर सकते हैं । Vi और विम पर इस बहुत जानकारीपूर्ण पोस्ट से :

के लिए X11 आधारित सिस्टम (यानी। लिनक्स और अधिकांश अन्य यूनिक्स की तरह सिस्टम) 2 clipboards, जो एक दूसरे से स्वतंत्र हैं:

  • प्राथमिक - यह कॉपी-ऑन-चयन है, और मध्य माउस बटन के साथ चिपकाया जा सकता है।
  • क्लिपबोर्ड - यह (आमतौर पर) के साथ कॉपी किया जाता है ^C, और इसके साथ चिपकाया जाता है ^V(यह एमएस विंडोज की तरह है)।

विम के पास इन क्लिपबोर्डों के अनुरूप 2 विशेष रजिस्टर हैं:

  • *PRIMARY का उपयोग करता है; mnemonic: s tar is s Elect (कॉपी-ऑन- s चुनाव के लिए)
  • +क्लिपबोर्ड का उपयोग करता है; mnemonic: CTRL + C (सामान्य कीबाइंड के लिए)

एक रजिस्टर की प्रतिलिपि बनाने के लिए, आप कॉपी कमांड ( y) के साथ "और रजिस्टर के नाम ( *उदाहरण के लिए) से पहले आते हैं। "*y, तो चिपकाने के लिए बीच-क्लिक करें, या "+yऔर ShiftInsertपेस्ट करने के लिए।


3

इस सवाल से एक काफी दिलचस्प समाधान निकलता है । Xclip को स्थापित करें, फिर कमांड के पाइप आउटपुट को xclip ( cat file | xclip -selection clipboardउदाहरण के लिए), और फिर इसे कहीं भी पेस्ट करें, (यदि यह टर्मिनल में है - उपयोग करें Ctrl ShiftV )। अब, पता चलता है कि आप वास्तव में उस कमांड को छोटा कर सकते हैं xclip -sel clip, जो मैन पेज या उदाहरणों को पढ़ने से बिल्कुल स्पष्ट नहीं है।


2
एक और तरीका है अगर आप इस प्लगइन के साथ स्क्रीन या tmux का उपयोग करते हैं । किसी भी मामले में, कुछ स्थापित करने की आवश्यकता है।
मूरू

एक्स सर्वर में प्रयुक्त वास्तविक क्लिपबोर्ड क्या है? मुझे कुछ भी नहीं मिला /dev, लेकिन पाठ अभी भी कहीं आयोजित है, है ना?
सर्गी कोलोडियाज़नी

मैंने हमेशा यह माना कि यह स्मृति में होगा। हालांकि यह यूनिक्स और लिनक्स के लिए एक अच्छा सवाल है ।
मूरू

3

मेरे पास समस्या थी क्योंकि मेरा विम क्लिपबोर्ड का समर्थन नहीं कर रहा था :

vim --version | grep clip
-clipboard       +insert_expand   +path_extra      +user_commands
+emacs_tags      -mouseshape      +startuptime     -xterm_clipboard

मैंने vim-gnome (जो क्लिपबोर्ड का समर्थन करता है) स्थापित किया और फिर दोबारा जाँच की:

vim --version | grep clipboard
+clipboard       +insert_expand   +path_extra      +user_commands
+emacs_tags      +mouseshape      +startuptime     +xterm_clipboard

अब मैं क्रमशः "+ y और" + p का उपयोग करके कॉपी और पेस्ट करने में सक्षम हूं।

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