विम में गैर विनाशकारी पाइपिंग?


3

क्या किसी पाठ को विम में बाहरी कमांड के माध्यम से पाइप करने का एक तरीका है, लेकिन चयनित पाठ को आउटपुट के साथ बदलने के लिए नहीं? कभी-कभी मैं एक्स क्लिपबोर्ड पर एक विम बफ़र में कुछ कॉपी करना चाहता हूं, इसलिए मैं कुछ का उपयोग करता हूं %!xclip- लेकिन फिर मुझे "पूर्ववत्" करना होगा ताकि पाठ वापस प्राप्त करने के लिए कमांड प्राप्त हो सके क्योंकि कुछ भी वापस नहीं आता है। एक्लिप के चारों ओर एक आवरण लिपि लिखने से कम है जो पाठ को वापस गूँजता है, क्या ऐसा करने का एक बेहतर तरीका है?

धन्यवाद!


यदि आप gvim का उपयोग करते हैं तो आप विशेष क्लिप के साथ सीधे एक्स क्लिपबोर्ड पर कॉपी कर सकते हैं +"+yyक्लिपबोर्ड में वर्तमान लाइन की प्रतिलिपि बनाता है। आप दृश्य चयन का भी उपयोग कर सकते हैं।
कीथ

जवाबों:


3

%!xclipउपयोग के बजाय

%w !xclip

wऔर के बीच की जगह पर ध्यान दें !। देख

:help :w_c

1

क्लिपबोर्ड पर प्रतिलिपि बनाने के लिए, मैं उपयोग करता हूं

"*y

के बीच अंतर पर अधिक के लिए "*और "+, आप बाहर की जाँच करना चाहते हैं :h x11-selection। मेरे लिए, निम्नलिखित प्रासंगिक प्रतीत होता है:

Xterm, डिफ़ॉल्ट रूप से, हमेशा PRIMARY और CUT_BUFFER0 दोनों के लिए दृश्य चयन लिखता है। जब यह चिपक जाता है, तो यह उपलब्ध होने पर प्राथमिक का उपयोग करता है, या फिर CUT_BUFFER0 पर वापस आ जाता है। इस कारण से, विम और एक एक्सटर्म के बीच कटिंग और पेस्ट करते समय, आपको "* रजिस्टर" का उपयोग करना चाहिए। Xterm CLIPBOARD का उपयोग नहीं करता है, इस प्रकार "+ xterm के साथ काम नहीं करता है।

इसलिए मैं उल्लेखित उस पेथ के"* बजाय के साथ चिपका रहूंगा , लेकिन आप यह परखने के लिए अच्छा कर सकते हैं कि आपके उपयोग पैटर्न के लिए कौन सा सबसे अच्छा काम करता है।"+


1
हां, *रजिस्टर प्रश्न के करीब है क्योंकि डिफ़ॉल्ट रूप xclipसे PRIMARYचयन का उपयोग करता है , भी।
पेथ
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.