मेरे पास एक लॉजिटेक एमएक्स 400 वायरलेस है। इसमें एक खोज बटन है जिसे मैं चिपकाने के लिए उपयोग करना चाहूंगा (इसके बजाय अत्यंत संवेदनशील लेकिन स्क्रॉल व्हील को दबाने के लिए)। मैंने पहले से ही xbindkeys के साथ अन्य बटन का रीमैप किया, और बटन प्रेस कोड खोजने के लिए xev का उपयोग किया, लेकिन यह खोज बटन के लिए काम नहीं करता है। xev का उपयोग करना और खोज बटन पर क्लिक करने से मुझे निम्नलिखित घटनाएँ मिलती हैं
FocusOut event, serial 34, synthetic NO, window 0x3c00001,
mode NotifyGrab, detail NotifyAncestor
FocusIn event, serial 34, synthetic NO, window 0x3c00001,
mode NotifyUngrab, detail NotifyAncestor
KeymapNotify event, serial 34, synthetic NO, window 0x0,
keys: 4294967275 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
PropertyNotify event, serial 34, synthetic NO, window 0x3c00001,
atom 0x1d7 (_NET_WM_ICON_GEOMETRY), time 23653064, state PropertyNewValue
कोई ButtonPress घटनाओं। ऐसा लगता है कि खोज बटन एक्स घटनाओं के नीचे एक स्तर पर इंटरसेप्टेड है। कोई विचार? मेरे पास ubuntu 12.04 है। उबंटू वास्तव में क्लिक को देखता है और एक खोज संवाद को जन्म देता है, लेकिन एक्सवे में क्लिक इवेंट का कोई निशान नहीं है।
संपादित करें
मैंने xmodmap के साथ प्रदान की गई विधि की जाँच की। मेरी .Xmodmap
अब निम्नलिखित पंक्ति है
keycode 225 = XF86Paste NoSymbol XF86Paste``
xmodmap ~/.Xmodmap
अब चलाने से बटन पूरी तरह से निष्क्रिय हो जाता है (या कम से कम, मुझे इसे दबाकर कोई परिणाम नहीं मिलता है)। मैंने कोशिश की xmodmap -pke
और यह प्रिंट:
keycode 225 = XF86Paste NoSymbol XF86Paste NoSymbol XF86Paste
अजीब बात है। अन्य सभी प्रविष्टियाँ समान रूप से स्वरूपित हैं। मैं समाधान के करीब हूं, लेकिन अभी भी कुछ अजीब है।
संपादित करें २
मैंने xinput चलाने की कोशिश की (इस आदेश के बारे में कभी नहीं सुना। अद्भुत सामान)। Logitech के लिए दो प्रविष्टियाँ हैं। यहाँ उनमें से प्रत्येक को सूचीबद्ध करने का आउटपुट है (आईडी ९ और १०)
Logitech USB Receiver id=9 [slave pointer (2)]
Reporting 7 classes:
Class originated from: 9. Type: XIButtonClass
Buttons supported: 24
Button labels: "Button Left" "Button Middle" "Button Right" "Button Wheel Up" "Button Wheel Down" "Button Horiz Wheel Left" "Button Horiz Wheel Right" "Button Side" "Button Extra" "Button Forward" "Button Back" "Button Task" "Button Unknown" "Button Unknown" "Button Unknown" "Button Unknown" "Button Unknown" "Button Unknown" "Button Unknown" "Button Unknown" "Button Unknown" "Button Unknown" "Button Unknown" "Button Unknown"
Button state:
Class originated from: 9. Type: XIValuatorClass
Detail for Valuator 0:
Label: Rel X
Range: -1.000000 - -1.000000
Resolution: 1 units/m
Mode: relative
Class originated from: 9. Type: XIValuatorClass
Detail for Valuator 1:
Label: Rel Y
Range: -1.000000 - -1.000000
Resolution: 1 units/m
Mode: relative
Class originated from: 9. Type: XIValuatorClass
Detail for Valuator 2:
Label: Rel Horiz Wheel
Range: -1.000000 - -1.000000
Resolution: 1 units/m
Mode: relative
Class originated from: 9. Type: XIValuatorClass
Detail for Valuator 3:
Label: Rel Vert Wheel
Range: -1.000000 - -1.000000
Resolution: 1 units/m
Mode: relative
Class originated from: 9. Type: XIScrollClass
Scroll info for Valuator 2
type: 2 (horizontal)
increment: 1.000000
flags: 0x0
Class originated from: 9. Type: XIScrollClass
Scroll info for Valuator 3
type: 1 (vertical)
increment: -1.000000
flags: 0x2 ( preferred )
Logitech USB Receiver id=10 [slave pointer (2)]
Reporting 6 classes:
Class originated from: 10. Type: XIButtonClass
Buttons supported: 7
Button labels: "Button 0" "Button Unknown" "Button Unknown" "Button Wheel Up" "Button Wheel Down" "Button Horiz Wheel Left" "Button Horiz Wheel Right"
Button state:
Class originated from: 10. Type: XIKeyClass
Keycodes supported: 248
Class originated from: 10. Type: XIValuatorClass
Detail for Valuator 0:
Label: Rel X
Range: -1.000000 - -1.000000
Resolution: 1 units/m
Mode: relative
Class originated from: 10. Type: XIValuatorClass
Detail for Valuator 1:
Label: Rel Y
Range: -1.000000 - -1.000000
Resolution: 1 units/m
Mode: relative
Class originated from: 10. Type: XIValuatorClass
Detail for Valuator 2:
Label: Rel Horiz Wheel
Range: -1.000000 - -1.000000
Resolution: 1 units/m
Mode: relative
Class originated from: 10. Type: XIScrollClass
Scroll info for Valuator 2
type: 2 (horizontal)
increment: 1.000000
flags: 0x0
परीक्षण उपकरण 9 बटन के साथ कुछ भी नहीं करता है। परीक्षण उपकरण 10 के बजाय काम करता है, और यह आउटपुट है जैसा कि मैं क्लिक करता हूं
$ xinput test 10
key press 225
key release 225
key press 225
key release 225
key press 225
key release 225
तो ऐसा प्रतीत होता है कि माउस इस संबंध में एक कीबोर्ड के रूप में कार्य करता है, लेकिन किसी कारण से, जब यह कुंजी 225 प्राप्त करता है तो xmodmap कुछ भी नहीं करता है।
** संपादित करें **
मैं पुष्टि कर सकता हूं कि हर बार जब मैं बटन क्लिक करता हूं तो keycode 225 = a
प्रिंट जोड़ देता a
हूं। तो समस्या से संबंधित प्रतीत होता है कि XF86Paste वास्तव में कैसे संभाला जाता है। मैं इसे भेज रहा हूं, लेकिन यह चिपकाने वाला नहीं है।
tail -f /var/log/dmesg
फिर बटन दबाकर चलाएं । क्या आपको चाबियों / बटन का जिक्र करते हुए कोई आउटपुट मिलता है?
xinput list
पता लगाएं और उसके बाद अपनी खोज कुंजी के बटन कोड का पता लगाएं xinput test <MOUSE ID>
। क्या यह काम करता है?
xev
, लेकिन कुछ भी नहीं होता है। इसका मतलब है कि आपको चिपकाने के लिए कुंजी संयोजन CTRL + v का उपयोग करना होगा। Xmodmap बटन 1: 1 को मैप करता है, लेकिन कुंजी प्रेस पर कमांड के निष्पादन को ट्रिगर करने के लिए आप कीबोर्ड शॉर्टकट सेटिंग्स का उपयोग कर सकते हैं (मेरा उत्तर देखें)।
xbindkeys
चलाने के लिए जब आप सही प्रारंभ करेंगे सेट? क्या आप इसे अक्षम कर सकते हैं और पुनः प्रयास कर सकते हैं?