माइक्रोसॉफ्ट स्कल्प कम्फर्ट माउस पर रेप साइड टच बटन


12

मैंने हाल ही में एक Microsoft मूर्तिकला आराम माउस खरीदा है। यह मेरे लैपटॉप से ​​कनेक्ट करने के लिए ब्लूटूथ का उपयोग करता है और सभी नियमित माउस बटन लिनक्स और विंडोज 7 के तहत बिल्कुल सही काम करते हैं। इस माउस के बारे में क्या अलग है, हालांकि, यह है कि इसके पास एक विशेष Windows/ Superकुंजी है जो दबाए जाने पर प्रारंभ / मेनू लॉन्च करता है। इसमें एक टच सेंसर भी है जो पता लगाता है कि साइड बटन ऊपर या नीचे की तरफ घुसा हुआ है और माउस को यह स्वीकार करने के लिए कंपन करता है कि यह सक्रिय हो गया है।

बेशक विंडोज में एक प्रोग्राम है जो मुझे स्ट्रोक को बदलने और कंपन को बंद करने की सुविधा देता है।

लिनक्स में, xev केवल एक सामान्य कीस्ट्रोक का पता लगाता है जब साइड बटन दबाया जाता है या स्वाइप किया जाता है। Xev किसी भी माउस बटन प्रेस की सूचना नहीं देता है।

तो मेरा प्रश्न यह है कि क्या मैं लिनक्स के तहत मुख्य प्रेस को क्या भेज सकता हूं?

मैं कुंजी से बाध्यकारी बदलने के लिए प्यार होता है tabकरने के लिए down, backspaceकरने के लिए up, (क्या xev रिपोर्ट) के लिए ctrl+ alt+ left/ rightकार्यस्थानों के बीच स्विच करने के लिए।

किसी भी मदद के लिए धन्यवाद!


क्या आपने चूहों की मदद के लिए howto की जाँच की। सहायता / comunity / ManyButtonsMouseHowto ?
ubfan1

1
टिप ubfan1 के लिए धन्यवाद, xinput get-button-map मुझे 13 बटन देता है। xev और xinput परीक्षण रिपोर्ट में केवल 1-7 बटन होते हैं। मैंने लिंक से xinput सेट-बटन-मैप और xbindkeys का उपयोग करते हुए 8-13 बटन हटाने की कोशिश की, लेकिन कुछ भी नहीं बदला। मुख्य कुंजी रिपोर्ट दबाकर कुंजी दबाएं 133 (सुपर), रिपोर्ट कुंजी दबाएं 22 (बैकस्पेस), रिपोर्ट नीचे कुंजी 23 दबाएं (टैब) स्वाइप करें।
user223544

जवाबों:


5

मैंने बस खुद को खरीदा और पाया कि निम्नलिखित मेरे लिए पूरी तरह से काम करता है।

  1. Dconf- संपादक खोलें ( sudo apt-get install dconf-editorयदि यह पहले से स्थापित नहीं है)।
  2. Org पर नेविगेट करें -> सूक्ति -> डेस्कटॉप -> wm -> कीबाइंडिंग।
  3. स्विच-टू-वर्कस्पेस-डाउन का मान बदलें

    ['<Control><Alt>Down', '<Primary><Super>Tab', '<Control><Super>Tab']

    और स्विच-टू-वर्कस्पेस-अप का मान

    ['<Control><Alt>Up', '<Primary><Super>BackSpace', '<Control><Super>Backspace']


यह समाधान xbindkeys के साथ मिले समाधान की तुलना में अधिक मज़बूती से काम करता है। Xbindkeys की तुलना में एकमात्र दोष यह है कि xbindkeys समाधान केवल माउस की प्रमुख घटनाओं को पकड़ने के लिए लगता था, जबकि कीबोर्ड कीज़ का उपयोग करने पर यह समाधान भी काम करेगा। बावजूद, इस समाधान की विश्वसनीयता इसे बेहतर समाधान बनाती है।
user223544

2

इसलिए चूंकि Microsoft स्कल्प कम्फर्ट माउस सुपर और स्वाइप जेस्चर के लिए माउस बटन प्रेस रजिस्टर नहीं कर रहा है, बल्कि कीबोर्ड की प्रेस दबा रहा है, इसलिए मैंने उन प्रेस को सुनने और Ctrl+ भेजने के लिए 'xautomation' और 'xbindkeys' पैकेज का उपयोग किया AltRight/ Leftकार्यस्थानों के बीच स्विच करने के लिए। यह एक आदर्श समाधान नहीं है, लेकिन यह 10 में से 8 बार काम करता है।

#Move to left workspace
"xte 'keydown Control_L' 'keydown Alt_L' 'usleep 100' 'key Left' 'keyup Control_L' 'keyup Alt_L' 'keyup Left'"
   m:0x4+mod4+m:0x0+c:23
   #Control_L+Super_L+Tab

#Move to right workspace
"xte 'keydown Control_L' 'keydown Alt_L' 'usleep 100' 'key Right' 'keyup Control_L' 'keyup Alt_L' 'keyup Right'"
   m:0x4+mod4+m:0x0+c:22
   #Control_L+Super_L+Backspace

इस xbindkeys की स्क्रिप्ट क्या करती है, यह उन कीपर्स के लिए सुनता है, जो मॉइस स्वाइप करते हैं और जेस्चर को कंप्यूटर पर भेजते हैं। यदि पता चला है, तो xautomation मानक चाल डेस्कटॉप कीस्ट्रोके, control+ alt+ left/ भेजता है right

माउस पर कड़ी चोट अप भाव के कीस्ट्रोक भेजता है left control+ left super+ backspace। माउस पर स्वाइप डाउन जेस्चर keystroke left control+ left super+ भेजता है tab। m: 0x4 + mod4 + m: 0x0 + c22 वास्तविक कुंजी कोड संयोजन है जो xbindkeys द्वारा पता लगाया जाता है।

मैं यह देखने के लिए थोड़ा और गड़बड़ कर दूंगा कि क्या मैं दक्षता में सुधार कर सकता हूं, लेकिन अभी के लिए यह काम हो गया है। मैं तो बस उम्मीद है tabऔर backspaceमाउस outputs किसी भी काम है कि मैं कर रहा हूँ के साथ पेंच नहीं है।


1
क्या आप बता सकते हैं कि समाधान कैसे काम करता है? क्या माउस भेज रहा है Control_L+Super_L+Tab(Control_L + Super_L कहां से आ रहे हैं)? या क्या आप माउस बटन से मेल खाते हैं m:0x4+mod4+m:0x0+c:23(आपको लगता है कि प्रश्न में कोई माउस घटना उत्पन्न नहीं हुई है)?
वोल्कर सेगेल

मैंने अपने समाधान को यह समझाने के लिए संपादित किया कि Control_L + Super_L कहां से आ रहे हैं। मैंने m: 0x0 + mod4 + m: 0x0 + c: 23 का उद्देश्य भी समझाया।
user223544

0

मैं फ़ायरफ़ॉक्स में टैब के माध्यम से दोनों दिशाओं में नेविगेट करने के लिए एक ही बटन को मैप करना चाहता था। मैं xbindkeys और xmacro का उपयोग कर रहा हूं। यह बहुत अच्छा काम कर रहा है!

.xbindkeysrc

#Thumb down
"echo 'KeyStrPress Control_L KeyStrPress Tab KeyStrRelease Control_L KeyStrRelease Tab'|xmacroplay :0"
   Control+Mod4+Tab

#Thumb up
"echo 'KeyStrPress Control_L KeyStrPress Shift_L KeyStrPress ISO_Left_Tab KeyStrRelease Control_L KeyStrRelease Shift_L KeyStrRelease ISO_Left_Tab' |xmacroplay :0"
   Control+Mod4+BackSpace
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.