मैं आपकी हताशा को समझता हूं, लेकिन xinput
टूल की मदद से इस समस्या को बहुत सरल रूप से हल किया जा सकता है ।
अपने USB माउस में पहले प्लग करें, फिर निम्न कमांड चलाएँ:
xinput list
id
अपने माउस को देखने के लिए । उपरोक्त कमांड का आउटपुट इसके समान हो सकता है:
xinput | बिल्ली
⎡ वर्चुअल कोर पॉइंटर आईडी = 2 [मास्टर पॉइंटर (3)]
⎜ 4 वर्चुअल कोर एक्सटेस्ट पॉइंटर आईडी = ४ [दास पॉइंटर (२)]
Id id SynPS / 2 सिनैप्टिक्स टचपैड आईडी = 14 [दास सूचक (2)]
⎜ ter USB माउस आईडी = 11 [दास सूचक (2)]
2 वर्चुअल कोर कीबोर्ड आईडी = ३ [मास्टर कीबोर्ड (२)]
...
उपरोक्त उदाहरण में USB माउस है id=11
। हम इसका उपयोग id
निम्नलिखित कमांड में करेंगे जो कि केवल USB माउस के लिए छोड़ दिए जाने वाले बटन को स्वैप करेंगे (और टैचपैड के लिए नहीं):
xinput set-button-map 11 3 2 1
सामान्य रूप में:
xinput सेट-बटन-मैप आईडी 3 2 1
परिवर्तन को वापस लाने के लिए, उपयोग करें:
xinput सेट-बटन-मैप आईडी 1 2 3
परिवर्तन को स्थायी रूप से करने के लिए, स्टार्टअप एप्लिकेशन में निम्न कमांड जोड़ें ( स्टार्टअप एप्लिकेशन के लिए डैश में खोजें ):
sh -c "xinput सेट-बटन-मैप आईडी 3 2 1"
अपडेट करें:
चूंकि रिबूट के बाद आईडी बदल सकती है लेकिन USBmouse का नाम नहीं है, आप माउस के नाम के लिए grep भी कर सकते हैं और इसे लागू कर सकते हैं। विवरण reg को छोड़ने के लिए। अंतिम समाधान के नाम की तरह लग रहा है:
आईडी में `/ usr / बिन / xinput सूची के लिए | / बिन / grep ' USB माउस ' | / बिन / grep -o [0-9] [0-9] `; xinput सेट-बटन-मैप $ आईडी ३ २ १; किया हुआ;
इसे उपरोक्त उल्लिखित स्टार्टअप एप्लिकेशन में पैक करें, जो आपको अंत में मिलेगा:
sh -c "in id के लिए '/ usr / bin / xinput सूची | / bin / grep' USB माउस '| / bin / grep -o [0-9] [0-9]`; xinput सेट-बटन-मैप करें $ आईडी 3 2 1; किया गया; "
sh -c "for id in '/usr/bin/xinput list | /bin/grep 'Razer' | /bin/grep -o [0-9][0-9]'; do xinput set-button-map $id 3 2 1; done;"
और यह काम करता है (शायद किसी को उचित हाइफ़न की देखभाल करनी है)। संकेत के लिए Thx।