कुछ अनुप्रयोगों में CLIPBOARD से Shift + Insert पेस्ट क्यों होता है और दूसरों में PRIMARY?


29

मैं कीबोर्ड शॉर्टकट के साथ प्राथमिक चयन (उदाहरण के लिए माउस-चयनित पाठ) से कैसे पेस्ट कर सकता हूं? Shift+Insertआवेदन के आधार पर प्राथमिक या क्लिपबोर्ड से असंगत रूप से चिपकाया जाता है।

पृष्ठभूमि:

Ctrl+Cप्रतियाँ चयनित पाठ CLIPBOARD को जबकि माउस-चयन प्रतियाँ PRIMARY को। CLIPBOARD से चिपकाएँ Ctrl+Vऔर PRIMARY से चिपकाएँ mouse-middle-click

एक टर्मिनल एमुलेटर (सूक्ति-टर्मिनल) में, CLIPBOARD से पेस्ट करें Ctrl+Shift+V। ( mouse-middle-clickअभी भी PRIMARY से चिपकाएँ ।)

मैं एक कीबोर्ड शॉर्टकट के साथ PRIMARY से पेस्ट करना चाहता हूं। सूक्ति-टर्मिनल में, यह है Shift+Insert, लेकिन gedit और Firefox में, Shift+InsertCLIPBOARD से चिपकाता है। मैं एक शॉर्टकट चाहता हूं जो लगातार CLIPBOARD से चिपकता है और एक अलग शॉर्ट कट है जो लगातार PRIMARY से चिपकाता है।

मैं Ubuntu 14.04 को xmonad और Firefox 34.0 के साथ चला रहा हूं

जवाबों:


30

सभी ऐप्स को आप का उल्लेख किया है gtk+क्षुधा तो यह काफी आसान जवाब देने के लिए है क्यों ... क्योंकि में सभी gtk+ क्षुधा ( एक को छोड़कर ), Shift+ Insertक्लिपबोर्ड से चिपकाता - यानी यह करने के लिए बराबर है Ctrl+ V। शॉर्टकट को हार्डकोड किया जाता है gtkentry.c(लाइन 2022) और gtktextview.c(लाइन 1506):

gtk_binding_entry_add_signal (binding_set, GDK_KEY_Insert, GDK_SHIFT_MASK,
                "paste-clipboard", 0);

यह जीटीके + 3 संदर्भ मैनुअल के तहत भी प्रलेखित है GtkEntry:

The “paste-clipboard” signal
void
user_function (GtkEntry *entry,
               gpointer  user_data)
The ::paste-clipboard signal is a keybinding signal which gets emitted
to paste the contents of the clipboard into the text view.
The default bindings for this signal are Ctrl-v and Shift-Insert.

जहाँ तक मुझे पता है कि यह अन्य DE ( KDEs की Qtप्रमुख बाइंडिंग के साथ QTextEdit Class) और Windows OS 1 के साथ संगतता के लिए किया गया था । एकमात्र अपवाद है । लंबे समय तक बहस के बाद, devs (अन्य टर्मिनलों के साथ स्थिरता के लिए) है कि, में फैसला किया है , + प्राथमिक से पेस्ट करना चाहिए और + + क्लिपबोर्ड से पेस्ट करना चाहिए (हालांकि आप कुछ शॉर्टकट अनुकूलित करने के लिए विकल्प हैं)।
gnome-terminalgnome-terminalShiftInsertCtrlShiftV


के रूप में कैसे आप एक कीबोर्ड शॉर्टकट के साथ चयन पेस्ट करते हैं ... वहाँ कोई सीधा रास्ता नहीं है।

सबसे आसान तरीका एक स्क्रिप्ट को चलाने का शॉर्टकट है xdotool click 2जो मध्य-माउस बटन पर क्लिक करता है। हालांकि यह काम करता है (और इसे सभी या अधिकांश डीई और टूलकिट्स के साथ काम करना चाहिए), यह केवल तभी काम करता है जब माउस कर्सर वास्तव में पाठ प्रविष्टि बॉक्स पर होता है, अन्यथा यह विफल हो जाता है।

एक और अपेक्षाकृत आसान तरीका सूक्ति एक्सेसिबिलिटी के माध्यम से है, अगर यह आपके सिस्टम पर उपलब्ध है। इसमें एक सुन्न की उपस्थिति की भी आवश्यकता होती है। Universal Access>> पर जाएं Pointing & Clickingऔर इनेबल करें Mouse Keys। सुनिश्चित करें कि NumLockबंद है। फिर आप कर्सर को स्थानांतरित करने और क्लिक करने के लिए numpad कुंजियों का उपयोग कर सकते हैं। एक मध्य-माउस बटन क्लिक को अनुकरण करने के लिए, (और रिलीज़) *(तारांकन) दबाएँ 5( फिर एक छोटा गाइड ) दबाएँ । यह समाधान हमेशा gtk+वातावरण में काम करने के लिए लगता है। नकारात्मक पक्ष यह है कि इसकी आवश्यकता है Gnome Accessibilityऔर एक numpad है। साथ ही, आप शॉर्टकट को कस्टमाइज़ नहीं कर सकते।

एक दिलचस्प समाधान सूक्ति-बगज़िला (बग 643391) पर प्रस्तावित किया गया था । (अपडेट 2018: इस मुद्दे को अब ले जाया गया है यहाँ ।) यह कुछ स्रोत फ़ाइलें पैचिंग और में विन्यास विकल्प सेट करने की आवश्यकता है ~/.config/gtk-3.0/gtk.css(या ~/.gtkrc-2.0के लिए gtk+2 क्षुधा)। मैंने इसे व्यक्तिगत रूप से आज़माया नहीं है, लेकिन प्रतिक्रिया सकारात्मक है।

आदर्श रूप में, आप स्रोत फ़ाइलें पैच और एक परिभाषित करेगा "paste-selection"बाँध तो संकेत Shift+ Insertकरने "paste-selection"के बजाय "paste-clipboard"। एंडी कोड (ऊपर लिंक की गई बग रिपोर्ट में संलग्न) ऐसा करने के तरीके पर एक गाइड के रूप में कार्य कर सकता है। फिर भी, यह केवल gtk+ऐप्स को प्रभावित करेगा (मैं एक KDE/Qtआदमी नहीं हूं इसलिए मुझे नहीं पता कि Qtएप्लिकेशन व्यवहार को कैसे बदलना है)।


1: (आईबीएम के CUA का उल्लेख नहीं)


2
उस स्पष्टीकरण के लिए धन्यवाद। यह एक दया है कि कोई बेहतर समाधान मौजूद नहीं है, मुझे PRIMARY के लिए एक निरंतर कीबोर्ड शॉर्टकट बहुत याद आता है। माउस इम्यूलेशन वर्कअराउंड बहुत मदद नहीं करता है क्योंकि माउस से निपटने के लिए शॉर्टकट का मतलब है।
दीदी_एक्स did

1

मुझे खेद है: मैं प्रतिष्ठा के कारण टिप्पणी नहीं लिख सकता, इसलिए मैं उत्तर के रूप में लिखता हूं। यह प्रत्यक्ष समाधान नहीं है, लेकिन यह मेरी मदद करता है ...

आप जानकारी के संयोजन का उपयोग कर सकते हैं:

  1. Gtk थीम संपादित करें और अपनी इच्छानुसार कुंजी बंधन की अनुमति दें

  2. विषय के सीएसएस में gtk 3.0 कीबाइंडिंग बनाने का उदाहरण

  3. जीटीके कीबाइंडिंग और अनबाइंड को ओवरराइड करने का उदाहरण

  4. सूक्ति-टर्मिनल के लिए कीबाइंडिंग का उदाहरण

  5. CUTBUFFER के लिए सिंक CLIPBOARD के लिए डिफ़ॉल्ट विकल्पों के साथ ऑटोचैट की ऑटो शुरुआत (यह वैकल्पिक है)। यह लिंक केवल समस्या के बारे में जानकारी के लिए है।

  6. ऑटो सिंक सेलेक्शन (द्वि-दिशात्मक ऑटो सिंक गलत करता है) के बिना कई बफ़र्स (PRIMARY और CLIPBOARD) को एक्सेस करने के लिए क्लिपमैन का उपयोग करें

इसलिए मैं सिर्फ gtk विषय का चयन करता हूं, और कॉपी-क्लिपबोर्ड (Ctrl + सम्मिलित करें) और पेस्ट-क्लिपबोर्ड (Shift + सम्मिलित) संकेतों के लिए आवश्यक सीबी के लिए विषय सीएसएस को संशोधित करता हूं।


1
यह एक अच्छे उत्तर की शुरुआत हो सकती है, यदि आप उन लिंक की सामग्री लेते हैं और जानकारी को जोड़ते हैं। जैसा कि यह खड़ा है, यह केवल लिंक का एक संग्रह है, और जो इसे हटाए जाने के खतरे में डालता है। कृपया जानकारी भरें ताकि यह सीधे उत्तर में हो, और मुझे यकीन है कि आप upvotes प्राप्त करेंगे (जिससे आपको टिप्पणी करने के लिए पर्याप्त प्रतिष्ठा मिलेगी)। धन्यवाद!
टोबे स्पीट
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.