URxvt के साथ कॉपी और पेस्ट करना


27

मैं डेबियन जेसी पर URxvt 9.20 उपयोग कर रहा हूँ और मैं कॉपी और जैसे मैं (के साथ सूक्ति-टर्मिनल के लिए इस्तेमाल किया गया था पाठ चिपकाने के लिए एक रास्ता तलाश कर रहा हूँ Ctrl+ Insertकॉपी करने, के लिए Shift+ Insertचिपकाने के लिए)।

यह अलग-अलग urxvt कंसोल के भीतर काम करता है , यह उदाहरण के लिए urxvt और iceweasel के बीच काम नहीं करता है।

मैंने आर्चलिनक्स पर मैनुअल के अनुसार प्रयास किया , लेकिन यह काम नहीं करेगा (भले ही मैं वास्तव में Shift+ Ctrl+ C/ का उपयोग नहीं करना चाहता Vथा / यह एक कोशिश के लायक था)।

.Xresources:

! ******************
! urxvt config
! ******************

! Disable Perl extension
! If you do not use the Perl extension features, you can improve the security
! and speed by disabling Perl extensions completely. 
URxvt.perl-ext:
URxvt.perl-ext-common:

! Font spacing
! By default the distance between characters can feel too wide. It's controlled
! by this entry: 
! URxvt.letterSpace: -1

! -- Fonts -- !
URxvt.font:xft:Monospace:pixelsize=13
URxvt.boldfont:xft:Monospace-Bold:pixelsize=13
!URxvt*font:  -xos4-terminus-medium-*-*-*-14-*-*-*-*-*-iso8859-15,xft:terminus:pixelsize:12
!URxvt*boldFont:  -xos4-terminus-bold-*-*-*-14-*-*-*-*-*-iso8859-15,xft:terminus:bold:pixelsize:12
!URxvt*italicFont:  xft:Bitstream Vera Sans Mono:italic:autohint=true:pixelsize=12
!URxvt*boldItalicFont:  xft:Bitstream Vera Sans Mono:bold:italic:autohint=true:pixelsize=12

! Disable scrollbar
!URxvt*scrollBar: false

! Scrollbar style - rxvt (default), plain (most compact), next, or xterm
URxvt.scrollstyle: plain

! Background color
!URxvt*background: black
URxvt*background: #1B1B1B

! Font color
!URxvt*foreground: white
URxvt*foreground: #00FF00

! Other colors
URxvt*color0: black
!URxvt*color1: red3
URxvt*color1: #CD0000
URxvt*color2: green3
!URxvt*color3: yellow3
URxvt*color3: #C4A000
URxvt*color4: blue2
!URxvt*color4: #3465A4
URxvt*color5: magenta3
URxvt*color6: cyan3
URxvt*color7: gray90
URxvt*color8: grey50
URxvt*color9: red
URxvt*color10: green
URxvt*color11: yellow
!URxvt*color12: blue
URxvt*color12: #3465A4
URxvt*color13: magenta
URxvt*color14: cyan
URxvt*color15: white
! ******************
! /urxvt config
! ******************

आपको पता है कि आप अपने माउस के साथ पाठ का चयन करके कॉपी कर सकते हैं और दाईं ओर क्लिक करके पेस्ट कर सकते हैं? यदि आप नहीं करते हैं, क्या यह पर्याप्त है?
terdon

2
यहां समस्या यह है कि दो प्रोग्राम अलग-अलग एक्स-विंडोज चयनों का उपयोग कर रहे हैं, पारंपरिक प्रोग्राम PRIMARYशिफ्ट + इंसर्ट के साथ चयन का उपयोग करते हैं , और नए प्रोग्राम जो अन्य सिस्टम से कीबाइंडिंग की नकल करने की कोशिश CLIPBOARDकरते हैं, वही कीबाइंडिंग के लिए चयन पेस्ट करते हैं । GTK + PRIMARYमें माउस का उपयोग किए बिना पेस्ट करना कठिन हो गया है (जैसे मिडटन क्लिक, @terdon कहा, या लेफ्ट + राइट क्लिक, यदि तीसरा बटन एमुलेशन चालू है)। लेकिन, जबकि यह बताता है कि प्रोग्राम उनके बीच डेटा क्यों नहीं पास कर रहे हैं, मुझे आश्चर्य है कि आर्क विकी सुझाव क्यों काम नहीं किया।
njsg

आपने ArchWIki के सुझावों को कैसे आज़माया? यदि आप X शुरू करने के लिए एक ग्राफिकल लॉगिन स्क्रीन का उपयोग कर रहे हैं, तो आपको X संसाधनों का उपयोग करके पुनः लोड xrdbकरना होगा (यह होना चाहिए xrdb ~.Xresourcesया कुछ इसी तरह का)। किसी भी तरह से, आपको भी पुनरारंभ करने की आवश्यकता है urxvt। कुछ वितरणों में, आपको पर्ल एक्सटेंशन के साथ एक अलग पैकेज स्थापित करने की आवश्यकता हो सकती है, लेकिन ऐसा लगता है कि rxvt-unicodeडेबियन में बेस पैकेज में शामिल किया जा सकता है (मुझे गलत किया जा सकता है, हालांकि)।
njsg

1
@terdon आपकी टिप्पणी के लिए धन्यवाद। माउस के साथ चयन करना और मध्य क्लिक के साथ चिपकाना वास्तव में काम करता है। काश यह वह नहीं है जिसे मैं प्राप्त करना चाहता हूं, मैं Ctrl + Insert / Shift + Insert का उपयोग करना चाहता हूं जैसे मैं (आदतों और मंत्र हमें काम करने और तेज करने के लिए उपयोग कर रहा हूं, मैं अक्सर माउस का उपयोग नहीं कर रहा हूं (मैं i3wm का उपयोग करता हूं)।)
थॉमस जॉन

@njsg प्राथमिक / क्लिपबोर्ड अंतर को समझाने के लिए बहुत बहुत धन्यवाद। मैंने "कस्टम कुंजी बाइंडिंग" में ArchWiki में उल्लिखित पर्ल एक्सटेंशन की कोशिश की, इससे कोई फर्क नहीं पड़ा (मैंने पाठ्यक्रम में उपयोग करने से पहले इसे मेरे .Xresources में "पर्ल एक्सटेंशन को अक्षम करें" भाग में टिप्पणी की)। - हां, मैंने $ xrdb -merge ~/.Xresourceपहले किया था - हां, मैंने urxvt को पुनरारंभ किया था, या एक नया urxvt टर्मिनल विंडो खोलना था, जिसका एक ही प्रभाव है कि मैं एक सबसे महत्वपूर्ण बिंदु का उल्लेख करना भूल गया: मेरे पास एक डेस्कटॉप वातावरण स्थापित नहीं है: - I ' केवल एक विंडोज़ प्रबंधक (i3wm) का उपयोग कर रहा हूँ - मैं एक ग्राफिकल लॉगिन प्रबंधक का उपयोग करता हूँ
थॉमस जॉन

जवाबों:


16

दुर्भाग्य से, एक्स विंडो सिस्टम में कई अलग-अलग कॉपी-पेस्ट तंत्र हैं

Rxvt, अधिकांश पुराने-स्कूल X अनुप्रयोगों की तरह, प्राथमिक चयन का उपयोग करता है। आमतौर पर, जब आप माउस के साथ कुछ का चयन करते हैं, तो यह स्वचालित रूप से प्राथमिक चयन में कॉपी हो जाता है, और जब आप पेस्ट करने के लिए मध्य-क्लिक करते हैं, तो यह प्राथमिक चयन को चिपका देता है।

Ctrlआधुनिक GUI टूलकिट, जैसे गनोम-टर्मिनल और फ़ायरफ़ॉक्स का उपयोग करने वाले अनुप्रयोगों में + Cऔर Ctrl+ V(या अन्य प्रमुख बाइंडिंग), क्लिपबोर्ड से कॉपी / पेस्ट।

चयन के साथ काम करने की सुविधा के लिए उपकरण हैं। विशेष रूप से, यदि आप केवल एक एकल चयन करना चाहते हैं जो कि आप माउस या प्रेस Ctrl+ के साथ चयन करते हैं C, तो आप ऑटोकुटसेल चला सकते हैं (इसे .xinitrcअपने डेस्कटॉप वातावरण के स्टार्टअप कार्यक्रमों से शुरू कर सकते हैं ), जो पता लगाता है कि कुछ कॉपी किया गया है या नहीं चयनों में से एक और स्वचालित रूप से इसे दूसरे को कॉपी करता है।


20

पाठ चिपकाने के लिए, urxvt / rxvt-unicode में आप middle buttonPRIMARY चयन और Alt/Meta+ CLIPBOARD पेस्ट करने के लिए उपयोग कर सकते हैं middle button

कॉपी करने के लिए, टर्मिनल में पाठ को चिह्नित करने से पहले उसे प्राथमिक चयन में कॉपी कर दिया जाता है। हालाँकि CLIPBOARD के चयन के लिए कुछ कार्य आवश्यक हैं। मैंने आर्कलिंक पृष्ठ की जानकारी को आप rxvt-unicode-9.19 में शामिल लिपियों के साथ जोड़ा और इस तरह एक स्क्रिप्ट के साथ समाप्त हुआ: https://gist.github.com/xkr47/98224ed6b08bcb55ec0 । यह वर्तमान में चयनित पाठ को कॉपी करने के लिए Ctrl+ Insertया Ctrl+ Shift+ का उपयोग करने की अनुमति देता है c

उम्मीद है की यह मदद करेगा।

रिकॉर्ड के लिए, मैं डेस्कटॉप वातावरण भी नहीं चलाता; विंडो मैनेजर के रूप में सॉफ़िश का उपयोग करना।

युक्ति : आप "xclip" प्रोग्राम का उपयोग करके किसी टर्मिनल में क्लिपबोर्ड की निगरानी कर सकते हैं:

while :; do echo -ne '\033[31;1mCLIPBOARD: ' ; xclip -o -sel c ; echo ; echo -ne '\033[32;1mPRIMARY:   ' ; xclip -o -sel p ; echo ; echo -e '\033[m--------' ; sleep 1 ; done

या "xsel" कार्यक्रम का उपयोग कर:

while :; do echo -ne '\033[31;1mCLIPBOARD: ' ; xsel -b -o ; echo ; echo -ne '\033[32;1mPRIMARY:   ' ; xclip -p -o ; echo ; echo -e '\033[m--------' ; sleep 1 ; done

साइड टॉपिक: Emacs में PRIMARY और CLIPBOARD
जोनास बर्लिन

Alt / मेटा + मध्य बटन मेरे लिए डेबियन में काम करता है
जिंग

यह सही जवाब है।
विनी

15

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

के लिए CLIPBOARDबफ़र यह है CTRL+META+C(जो CTRL+ALT+Cमानक पीसी कीबोर्ड के लिए) कॉपी करने के लिए और CTRL+META+V( CTRL+ALT+V) चिपकाने के लिए।

Urxvt आदमी से उद्धरण :

चयन: चयन और पेस्टिंग पाठ

पाठ चयन और सम्मिलन / चिपकाने के तंत्र का व्यवहार xterm (1) के समान है।

चयन :

क्षेत्र की शुरुआत में बाएं क्लिक करें, क्षेत्र के अंत तक खींचें और जारी करें; चिह्नित क्षेत्र का विस्तार करने के लिए राइट क्लिक करें; किसी शब्द का चयन करने के लिए बाएं डबल-क्लिक करें; संपूर्ण ट्रिपल लाइन (जो कई स्क्रीन लाइनों को फैला सकती है) का चयन करने के लिए बाएँ ट्रिपल-क्लिक करें, जब तक कि संसाधन tripleclickwords द्वारा संशोधित न हो।

मेटा कुंजी (या मेटा + Ctrl कुंजी) दबाते समय एक चयन शुरू करना (संकलन: तामझाम) एक सामान्य के बजाय एक आयताकार चयन बनाएगा। इस मोड में, प्रत्येक चयनित पंक्ति चयन में अपनी रेखा बन जाती है, और अनुगामी व्हाट्सएप को नेत्रहीन रूप से रेखांकित और चयन से हटा दिया जाता है।

चिपकाने :

एक urxvt विंडो में मध्य माउस बटन को दबाने और जारी करने से PRIMARY चयन (या मेटा मोडिफ़ायर के साथ CLIPBOARD) का मान डाला जाता है जैसे कि इसे कीबोर्ड पर टाइप किया गया था।

Shift-Insert दबाने से PRIMARY चयन का मान भी डाला जाता है।

rxvt-unicode बाइंडिंग Ctrl-Meta-c भी प्रदान करता है और CLIPBOARD चयन के साथ सहभागिता करता है। पहला बाइंडिंग आंतरिक चयन का मान CLIPBOARD चयन में कॉपी किया जाता है, जबकि दूसरा बाइंडिंग CLIPBOARD चयन के मान को सम्मिलित करता है।


मुझे कभी नहीं लगता कि समाधान मैन पेज में क्यों हैं? अब मेरे लिए सब कुछ स्पष्ट है! धन्यवाद!
एनरिको मारिया डी एंजेलिस

1
वैसे, मैं यह भूल गया हूं कि प्राथमिक चयन और क्लिपबोर्ड के बीच कौन सा चिपकाया जाता है जब मैं राइट-क्लिक करने और चिपकाने से पहले कुछ का चयन करता हूं । अब यह स्पष्ट है: पहलेप्राथमिक
एनरिको मारिया डे एंजेलिस

12

आप चयन-से-क्लिपबोर्ड पर्ल एक्सलेन के साथ प्राथमिक और क्लिपबोर्ड दोनों के लिए urxvt की प्रतिलिपि बना सकते हैं। यह उन्हें सिंक में रखता है, इसलिए आप बस एक बार urxvt में कॉपी करें और इसे उन अनुप्रयोगों में काम करना चाहिए जो या तो उपयोग करते हैं।

URxvt.perl-ext-common: selection-to-clipboard

2
क्या मैं इस विस्तार के लिए शोरकट को बदल सकता हूं? मुझे डिफ़ॉल्ट ctrl-alt-c / v पसंद नहीं है। मैं ctrl-shift-c / v लेना चाहूंगा।
१४:१६

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