लिनक्स में एक अन्य कुंजी के लिए संदर्भ मेनू को कैसे रिमैप किया जाए?


19

मैंने सिर्फ एक लेनोवो थिंकपैड खरीदा है और मुझे इसमें हर चीज पर गर्व है। यह लिनक्स कर्नेल की तरह ही ठोस लगता है: पी।

समस्या यह है कि लेनोवो ने संदर्भ मेनू कुंजी को हटाने का फैसला किया जो कि कुंजी है जो राइट क्लिक सामान करता है। उन्होंने इसकी जगह एक प्रिंट स्क्रीन की की। मेरे कीबोर्ड में इसके ऊपर कुछ बटन के साथ इसका संख्यात्मक हिस्सा है। एक आवर्धक ग्लास कुंजी है जिसे मैं संदर्भ मेनू खोलने या राइट क्लिक कुंजी के लिए रीमैप करना चाहूंगा। क्या इसे करना संभव है?

मैंने अन्य संबंधित प्रश्नों की खोज करने की कोशिश की है, लेकिन मुझे केवल Na &ilus संदर्भ मेनू में विकल्प जोड़ने के लिए Q & As के रूप में मिला है। मैं इस मेनू को खोलने के लिए अपने कीबोर्ड की भौतिक कुंजी को मैप करना चाहता हूं। बिलकुल पहले की तरह। यह भी प्रतीत होता है कि डेल अपने इंस्पिरॉन कीबोर्ड में इस कुंजी को छोड़ रहा है। मुझे नहीं पता कि मैं माउस से ज्यादा कीबोर्ड का इस्तेमाल करता हूं।

अग्रिम में धन्यवाद।


3
कृपया xbindkeys स्थापित करें sudo apt-get install xbindkeys। फिर एक टर्मिनल रन में xbindkeys -kऔर वह कुंजी टाइप करें जिसे आप बदलना चाहते हैं। क्या आप अपने प्रश्न में आउटपुट जोड़ सकते हैं?
सेठ

"नॉकमैंड" एम: 0x50 + सी: 46 मॉड 2 + मॉड 4 + एल
झोन्नीट्यून्स

कौन एक प्रिंट स्क्रीन कुंजी चाहता है जहां वे एक मेनू कुंजी की उम्मीद करेंगे? मुझे गंभीरता से आश्चर्य है कि लेनोवो में काम करने के लिए आपको कितना नशे की अनुमति है। वैसे भी, ध्यान दें कि आपको शुरू करने के लिए किसी .Xmodmapउत्पन्न की आवश्यकता नहीं है xmodmap -pke, आप एक खाली फ़ाइल में बस अपना बंधन डाल सकते हैं। इसके अलावा, नीचे क्या पाया @Bhaha_hi देखें।
जे। काटज़विंकेल

जवाबों:


13

यह थोड़ा जटिल है लेकिन आप इसे कर सकते हैं। इन कदमों का अनुसरण करें:

कीकोड का पता लगाएं

  1. भागो xevकीकोड पता लगाने के लिए:

    xev | grep keycode
    
            state 0x0, keycode 36 (keysym 0xff0d, Return), same_screen YES,
            state 0x0, keycode 107 (keysym 0xff67, Menu), same_screen YES,
            state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    
  2. उस कुंजी को दबाएँ जिसे आप पुनः कॉन्फ़िगर करना चाहते हैं। टर्मिनल में आउटपुट आपको दिखाएगा keycode(सावधान रहें, कई हो सकते हैं)।

परीक्षण मानचित्रण

  1. मेरे लिए अस्थायी रूप से नई मैपिंग सेट करें keycode 107:

    xmodmap -e "keycode  107 = Return NoSymbol Return"
    

यदि कुंजी अपेक्षित रूप से व्यवहार करती है, तो आप कॉन्फ़िगरेशन को बचा सकते हैं।

अपना कॉन्फिगर सेव करें

  1. अपने मौजूदा कीमैप तालिका को अपने पास सहेजें $HOME, डीफॉइड को ओवरराइड करने के लिए:

    xmodmap -pke > ~/.Xmodmap
    
  2. ~/.xinitrcअपना कॉन्फ़िगरेशन लोड करने के लिए बनाएं या संपादित करें :

    $EDITOR ~/.xinitrc
    
  3. निम्नलिखित पंक्तियों को जोड़ें

    if [ -f $HOME/.Xmodmap ]; then
            /usr/bin/xmodmap $HOME/.Xmodmap
    fi
    

का आनंद लें

ऊपर दी गई अधिकांश जानकारी ArchWiki लेख से आई है


वहाँ एक समस्या है। जब मैं बटन दबाता हूं तो 'l' चिह्नित होता है। मैंने इसे xev पर चेक किया और यह मुझे 46 कीकोड देता है जो L l अक्षर को सौंपा गया है। हो सकता है कि यह एक keycode एक ले एक नहीं है।
झोनट्यून्स

@Jhonnytunes। जांचें कि आपका कीबोर्ड लेआउट सही है। आप अपने मॉडल को बदल सकते हैं 'sudo dpkg-reconfigure कीबोर्ड-कॉन्फ़िगरेशन'।
एड Villegas

अभी भी वही व्यवहार करनेवाला। मैंने अलग-अलग थिंकपैड मॉडल की कोशिश की और कुछ भी नहीं।
झोनट्यून्स

BTW मेरा थिंकपैड एक E530c है और कीबोर्ड सूची में दिखाई नहीं देता है।
झोन्नीट्यून्स

यदि यह आपका कीबोर्ड लेआउट है, तो शायद «डिलीट» के आगे की कुंजी वास्तव में «संदर्भ मेनू» है (जिस फ़ंक्शन की आप तलाश कर रहे हैं)। अन्यथा, किसी अन्य कुंजी को फिर से कॉन्फ़िगर करें या सीधे लेनोवो के डेस्क से पूछें कि आपको कौन सा लेआउट चुनना चाहिए।
एड विलेगस

12

मैंने यहां पाया कि उपयोग: shift+ F10संदर्भ मेनू खोलता है।

मुझे पता है कि यह सबसे अच्छा समाधान नहीं है, लेकिन मुझे लगा कि यह अस्थायी उपयोग के लिए मदद कर सकता है!

पुनश्च: मेरे पास e530c भी है, और मैंने डेबियन 7 (व्हीजी) पर इसका परीक्षण किया।


3

मुझे अंततः परीक्षण के घंटों के बाद ऐसा करने का तरीका मिला और विफल हो गया: डी

सबसे पहले स्थापित करें xautomation:

sudo apt-get install xautomation

फिर उबंटू सिस्टम सेटिंग्स में कीबोर्ड सेक्शन के शॉर्टकट टैब पर जाएं। पहले स्क्रीनशॉट प्रविष्टि पर जाएं और क्रियाओं को किसी अन्य कुंजी पर रीमैप करें या यदि आप चाहते हैं तो उन्हें अक्षम करें। मैंने थिंकपैड ब्लैक बटन (लॉन्च 1) द्वारा PrtSc (प्रिंट) कुंजी को बदल दिया।

अब कस्टम शॉर्टकट सेक्शन में जाएं और एक शॉर्टकट जोड़ें। आप जो चाहें उसे नाम दें, जैसे मेनू। कमांड फील्ड में इसे डालें:

xte 'keydown Shift_L' 'key F10' 'keyup Shift_L'

काम हो गया! यह एक चमत्कार की तरह काम कर रहा है;)


2

इसने मेरे लिए चाल चली। मेरे लिए मेरे थिंकपैड पर "PrtSc" बटन का कीकोड 107 है। मैंने पाया कि उबंटू में "xev" टूल है।

xmodmap -e "keycode  107 = Menu"

यह एक अस्थायी बदलाव है।

आप इस आदेश को / etc / प्रोफाइल में जोड़कर इसे स्थायी बना सकते हैं और यह आपके द्वारा बूट किए जाने वाले हर कार्य को अंजाम देगा और यह एक स्थायी परिवर्तन होगा।


1

मैं हाल ही में एक लेनोवो E550 का अधिग्रहण किया था और एक ही समस्या थी, मैं इसे xte(से xautomation) के साथ प्रयोग करके हल किया xmodmap

अन्य उत्तर पूरी तरह से काम क्यों नहीं करेंगे?

  1. @Ed Villegas (न ही @ नोनल पॉइंटर ) उत्तर काम नहीं करेगा क्योंकि संख्यात्मक भाग के ऊपर स्थित कुछ कुंजियाँ अपने आप से अद्वितीय कुंजी नहीं हैं ( जैसे लॉक कुंजी Super+ Lसंयोजन से संबंधित है )। जब xevलॉक कुंजी कीकोड को खोजने की कोशिश करने के लिए उपयोग किया जाता है तो यह दोनों Superऔर Lकीकोड को वापस करता है, आपको बस xevआउटपुट लाइन को लाइन द्वारा व्याख्या करना होगा ।

  2. के लिए @Bahax और @ जॉन Finegan : Shift+ F10एक प्रसंग मेनू कुंजी है, यह सभी अनुप्रयोगों में काम नहीं करता है और यह रूप में एक ही काम करता है प्रदान नहीं करता है Menu। यदि आप फ़ाइल एक्सप्लोरर में एक फ़ाइल का चयन करते हैं और फ़ाइल के Menuलिए संदर्भ मेनू को स्वयं पॉप-अप करना चाहिए, तो यह Shift+ F10संयोजन के साथ नहीं होता है , यह विंडो के लिए एक संदर्भ मेनू प्रदान करेगा।

  3. @ डैनियल बेहजादी 2 आइटम में लोगों के लिए एक समान दृष्टिकोण लेता है, लेकिन कीबोर्ड संयोजन को कीस्ट्रोके सिम्युलेटर के माध्यम से एक कुंजी से जोड़ता है, यह कुंजी को Shift+ से लिंक करेगा F10और समान परिणाम प्रदान करेगा।

जवाब जो काम करता है

यह ध्यान रखना महत्वपूर्ण है कि थिंकपैड कीबोर्ड में मौजूद कुंजी नहीं है Menu(यह नाम है), इसे निम्नलिखित चित्र में दिखाया गया है:

मेनू कुंजी

यद्यपि कुंजी मौजूद नहीं है, यह आपके कंप्यूटर में कीकोड मौजूद होना चाहिए, आप इसे कीकोड तालिका को प्रिंट करके पा सकते हैं xmodmap -pke | grep Menuजिसके साथ आपको कुछ इस तरह देना चाहिए:

xmodmap आउटपुट

इसे ध्यान में रखते हुए, @Danial Behzadi उत्तर की तरह स्थापित करें xautomation( xteकीस्ट्रोक सिमुलेशन के लिए उपयोग करने के लिए)

sudo apt-get install xautomation

और एक कस्टम शॉर्टकट बनाएं, ट्रिगर में उस कुंजी को दबाएं जिसे आप शॉर्टकट बनाना चाहते हैं, और Actionपेस्ट में xte 'key Menu'लागू करें और परीक्षण करें।

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