X.Org (Linux) में माउस त्वरण अक्षम करना


11

यह मैक ओएस एक्स प्रश्न में मेरे अक्षम माउस त्वरण का लिनक्स संस्करण है । उम्मीद है कि मुझे इस बार जवाब मिल जाएगा।

मैं माउस त्वरण से थक गया हूं और पूरी तरह से रैखिक माउस प्रतिक्रिया चाहता हूं। यह पॉइंटर एक्सीलरेशन पर X.Org विकी पेज पर किसी भी 5 या तो तरीकों (कुछ सूक्ष्मता से निहित) के माध्यम से आसानी से प्राप्त करने योग्य है । हालांकि, वे वेग स्केलिंग को भी अक्षम करते हैं

मुझे डिवाइस और स्क्रीन निर्देशांक के बीच 1: 1 मैपिंग नहीं चाहिए। मैं एक 1 चाहता हूं: एन मैपिंग जहां एन एक स्थिर है । कोई विचार?

जवाबों:


15

जिस तरह से मैंने पाया है कि काम करता है (और मैंने केवल उबंटू पर कोशिश की है)xinput कमांड के साथ है ।

सबसे पहले आपको उस माउस के लिए डिवाइस नंबर की पहचान करनी होगी जिसे आप बदलना चाहते हैं:

# xinput list
â¡ Virtual core pointer                         id=2    [master pointer  (3)]
â   â³ Virtual core XTEST pointer               id=4    [slave  pointer  (2)]
â   â³ Microsoft Microsoft 5-Button Mouse with IntelliEye(TM)   id=10   [slave  pointer  (2)]
⣠Virtual core keyboard                        id=3    [master keyboard (2)]
    â³ Virtual core XTEST keyboard              id=5    [slave  keyboard (3)]
    â³ Power Button                             id=6    [slave  keyboard (3)]
    â³ Power Button                             id=7    [slave  keyboard (3)]
    â³ CHICONY USB Keyboard                     id=8    [slave  keyboard (3)]
    â³ CHICONY USB Keyboard                     id=9    [slave  keyboard (3)]
    â³ IR-receiver inside an USB DVB receiver   id=11   [slave  keyboard (3)]

अब, इस उदाहरण में मैं अपने Microsoft माउस से खेलूंगा। आईडी = 10

अब देखते हैं कि यह उपकरण किन गुणों को संभाल सकता है:

# xinput list-props 10
Device 'Microsoft Microsoft 5-Button Mouse with IntelliEye(TM)':
    ... cruft cut ...
    Device Accel Profile (259):     3
    ... cruft cut ...

यह मान है कि चालक त्वरण को कैसे संभालता है:

-1: कोई भी वेग-निर्भर सूचक त्वरण या मंदी नहीं है। यदि निरंतर मंदी भी अप्रयुक्त है, तो कुछ चक्रों को बचाते हुए, गति प्रसंस्करण को दबा दिया जाता है।

0: पुराने व्यवहार के समान क्लासिक (डिफ़ॉल्ट), लेकिन अधिक पूर्वानुमान। थ्रेशोल्ड = /! = 0 पर आधारित 'बहुपद' और 'सरल' के बीच चयन करता है।

1: डिवाइस-निर्भर उपलब्ध अगर हार्डवेयर ड्राइवर इसे स्थापित करता है। सिनैप्टिक्स के लिए आ सकता है।

2: बहुपद तराजू बहुपद: वेग गुणांक के रूप में कार्य करता है, त्वरण घातांक होता है। बहुत उपयोगी, अनुशंसित प्रोफ़ाइल।

3: चिकनी रैखिक तराजू ज्यादातर रैखिक, लेकिन एक चिकनी (गैर-रैखिक) के साथ शुरू होती है।

4: त्वरित / असंबद्ध के बीच सरल संक्रमण, लेकिन एक चिकनी संक्रमण सीमा के साथ। इससे दो निवाइस पर त्वरण की मूलभूत समस्या है, जिस पर त्वरण वेग से स्वतंत्र रहता है। परंपरागत रूप से डिफ़ॉल्ट हालांकि।

5: एक पावर फंक्शन द्वारा पावर को तेज करता है। वेग यहाँ घातांक है। थ्रेसहोल्ड का पालन करता है। आसानी से नियंत्रित करना मुश्किल हो जाएगा, इसलिए यह महत्वपूर्ण है कि आपने अपने वेग का आकलन ठीक से कर लिया है।

6: रैखिक सिर्फ वेग और त्वरण के लिए रैखिक। सरल और साफ।

7: सीमित सुगमता त्वरण तक पहुँचती है, थ्रेसहोल्ड पर अधिकतम होती है, जहाँ यह समतल (सीमित) हो जाती है।

तो इससे हम देख सकते हैं कि यदि हम इस संपत्ति को -1 पर सेट करते हैं तो यह त्वरण को पूरी तरह से निष्क्रिय कर देगा।

$ xinput set-prop 10 259 -1

तो अब हमारे पास कोई त्वरण नहीं है, लेकिन क्या हम चाहते हैं? माउस अब थोड़ा धीमा है। अफसोस की बात यह है कि यह कैसा है। त्वरण अक्षम होने के साथ आपको माउस और डिस्प्ले के बीच 1: 1 संबंध मिलता है। आप माउस को एक डॉट छोड़ते हैं और माउस पॉइंटर एक पिक्सेल को बाईं ओर ले जाता है। यदि इनपुट मूवमेंट को गुणा करने का एक तरीका था (2 से कहो) तो प्रत्येक धुरी पर हर एक पिक्सेल माउस के लिए अप्राप्य होगा। यह माउस की सटीक स्थिति को काफी मुश्किल बना देगा। कुछ GUI माउस कंट्रोल पैनल में 'सेंसिटिविटी' सेटिंग वास्तव में वही करती है जो आप उम्मीद करते हैं - सबसे संवेदनशील 1: 1 अनुपात है - यह त्वरण है जो इसे इतना तेज लगता है।

इसलिए आप तेज गति चाहते हैं, लेकिन आप त्वरण नहीं चाहते हैं। एकमात्र तरीका है जो आप कर सकते हैं कि हार्डवेयर में है। मूल रूप से, आपको अधिक संवेदनशील माउस खरीदने की आवश्यकता होगी। एक उच्च DPI (डॉट्स प्रति इंच - हाँ, प्रिंटर की तरह) के साथ एक के लिए देखें। मुझे लगता है कि मेरे पुराने Microsoft IntelliEye प्रयोज्य के साथ काफी संवेदनशील है।

या शायद आपका माउस अभी भी संवेदनशील है? त्वरण अक्षमता के साथ भी यह आपकी पसंद के लिए बहुत तेज़ है? खैर, यह वह जगह है जहाँ

Device Accel Constant Deceleration (260):      1.0000

सेटिंग में आता है। यह एक निरंतर मंदी (या desinsitizing) अनुपात है। डिफ़ॉल्ट रूप से यह 1: 1 है, लेकिन इसके ऊपर कोई भी संख्या (यहां तक ​​कि अंश) ले जाएगा। माउस की थोड़ी मंदी पाने के लिए:

$ xinput set-prop 10 260 1.2

या वास्तव में नाजुक काम के लिए बड़े पैमाने पर मंदी:

$ xinput set-prop 10 260 10

या इसे सामान्य पर लौटाएँ:

$ xinput set-prop 10 260 1

यह तब भी काम करता है जब त्वरण प्रोफ़ाइल -1 (अक्षम) पर सेट की जाती है।


यदि मैं उच्च-डीपीआई माउस के साथ कम संवेदनशीलता चाहता हूं तो क्या होगा ? नहीं, क्षमा करें, 1: 1 मानचित्रण केवल काम नहीं करता है। और अगला मान 1: 2 नहीं है, आप कह सकते हैं, 1: 1.2। वास्तव में, मुझे पूरा यकीन है कि वर्तमान त्वरण कोड में गति को ठीक करने और उप-पिक्सेल रिज़ॉल्यूशन प्राप्त करने के लिए एक लाख अलग-अलग तरीके हैं। यदि केवल "नो एक्सेलेरेशन" प्रोफाइल था - जैसा कि "पूरी तरह से एक्सेलेरेशन सबरूटीन्स को डिसेबल करने के लिए।"
आइब

@ ऐब मेरे संपादन की जाँच करें
माज़ेंको

मुझे खेद है, यह सूचक मंदी नहीं है जिसकी मुझे आवश्यकता है। (ठीक है, शायद यह है, लेकिन बाद में मैंने अपना माउस आंदोलन बढ़ा दिया है, और एक नया माउस खरीदने के बिना, धन्यवाद।)
ऐब

इसे स्वीकार किया जाना चाहिए। मुझे पता नहीं था कि मंदी तैर सकती है, और सिर्फ पूर्णांक नहीं। धन्यवाद! कोई भी प्रोफ़ाइल वास्तव में त्वरण (विंडोज़ के विपरीत) को बंद नहीं करता है।
inf3rno

डेबियन स्ट्रेच में ये अब काम नहीं करते हैं: अपग्रेड के बाद डिवाइस एक्सेल कॉन्स्टेंट डिक्लेरेशन प्रॉपर्टी गायब हो गई, और मेरे पास इस माउस (xinput --list-props) के लिए क्या है, इसका कोई असर नहीं पड़ता (मुझे छोड़कर) एक रात बेकार माउस)।
जुबेटियन

2

X.org के स्रोतों के माध्यम से देखते हुए, एक कस्टम सर्वर के साथ खेल रहे हैं और अपने माउस के साथ कुछ जुनूनी परीक्षण कर रहे हैं, मैं सुरक्षित रूप से कह सकता हूं कि वर्तमान सीमित प्रोफ़ाइल (7) इसे प्राप्त करता है जब thresholdमान 0 पर सेट होता है। accelerationमूल्य तब वेग बन जाता है स्केलर (अदिश?)।

इसलिए:

xinput set-prop <device> "Device Accel Profile" 7
xset m <velocity> 0

दूसरा भाग आपके डेस्कटॉप वातावरण के माउस सेटिंग्स पैनल का उपयोग करके भी सेट किया जा सकता है। यह न भूलें कि इसे x/yगैर-पूर्णांक मानों के रूप में होना चाहिए , उदाहरण के 16/10लिए 1.6।

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

संपादित करें: स्थायित्व के लिए, आप इसे अपने में जोड़ सकते हैं xorg.xconf:

Section "InputClass"
        Identifier "Mouse with No Acceleration"
        MatchIsPointer "yes"
        MatchProduct "Mouse"
        Option "AccelerationProfile" "7"
EndSection

वहाँ से, आप अपने डेस्कटॉप पर्यावरण के माउस सेटिंग्स का उपयोग कर सकते हैं, जैसा कि मैंने उल्लेख किया है। हालाँकि, यदि आप एक पूर्ण xorg.confसमाधान चाहते हैं:

Section "InputClass"
        Identifier "Mouse With No Acceleration"
        MatchIsPointer "yes"
        MatchProduct "Mouse"
        Option "AccelerationProfile"     "7" # "limited" profile
        Option "AccelerationNumerator"   "2" # these adjust the sensitivity
        Option "AccelerationDenominator" "1" # these adjust the sensitivity
        Option "AccelerationThreshold"   "0" # this disables acceleration
                                             # in the "limited" profile
EndSection

<3 धन्यवाद। यहां तक ​​कि स्लीप मोड के लिए भी काम करता है।
साइमन ए। यूगस्टर

0

मुझे पता है कि यह पुराना है, लेकिन मुझे लगता है कि यह पहले से पूछे गए एक प्रश्न का उत्तर जोड़ने के लिए गुण है। XSET आपके लिए सबसे अधिक संभावना काम करेगा। मेरे द्वारा चलाया गया कमांड था xset m 1 1...

मैन पेज xset के लिए सामग्री जो मैंने माउस के विकल्पों के लिए आपके लिए xset (1) से क्यूरेट की है :

चूहा

एम विकल्प माउस मापदंडों को नियंत्रित करता है; इसे 'एम' के लिए संक्षिप्त किया जा सकता है। माउस के पैरामीटर acceleration' and'थ्रेशोल्ड' हैं। त्वरण को पूर्णांक या एक साधारण अंश के रूप में निर्दिष्ट किया जा सकता है। माउस, या जो भी पॉइंटर मशीन से जुड़ा है, acceleration' times as fast when it travels more thanथोड़े समय में थ्रेशोल्ड के पिक्सल में चला जाएगा । इस तरह, माउस को सटीक संरेखण के लिए इस्तेमाल किया जा सकता है जब इसे धीरे-धीरे स्थानांतरित किया जाता है, फिर भी इसे वांछित कलाई की एक झिलमिलाहट में स्क्रीन के पार यात्रा करने के लिए सेट किया जा सकता है। एम विकल्प के लिए एक या दोनों मापदंडों को छोड़ा जा सकता है, लेकिन यदि केवल एक दिया जाता है, तो इसे त्वरण के रूप में व्याख्या की जाएगी। यदि कोई पैरामीटर या ध्वज 'डिफ़ॉल्ट' का उपयोग नहीं किया जाता है, तो सिस्टम डिफॉल्ट सेट हो जाएगा।

यदि threshold' parameter is provided and 0, theत्वरण '> पैरामीटर का उपयोग अधिक प्राकृतिक और निरंतर> सूत्र के घातांक में किया जाएगा, जो धीमी गति के लिए सटीक नियंत्रण दे सकता है लेकिन तेज> गति के लिए बड़ी पहुंच और बीच में गति के लिए एक प्रगतिशील संक्रमण। इस मामले में अनुशंसित 'त्वरण' मान 3/2 से 2 है, लेकिन उस सीमा तक सीमित नहीं है।

डिस्क्लेमर: यह कुछ अतिरिक्त चालबाजी के बिना एक रिलोजिन / रिबूट से नहीं बचता है ...

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