سؤال تعطيل تسريع الماوس في X.Org (Linux)


هذا هو نسخة لينكس من بلدي تعطيل تسارع الماوس في نظام التشغيل Mac OS X سؤال. أتمنى أن أحصل على إجابة هذه المرة.

أنا تعبت من تسارع الماوس وتريد أن يكون لها استجابة الماوس الخطية تماما. هذا يمكن تحقيقه بسهولة من خلال أي من الأساليب 5 أو ذلك (بعضها ضمني بمهارة) على X.Org صفحة wiki على تسارع المؤشر. ومع ذلك، كما أنها تعطل مقياس السرعة.

لا أريد تعيين 1: 1 بين إحداثيات الجهاز والشاشة. أريد تعيين 1: N حيث N هو ثابت. أيه أفكار؟


11
2018-03-18 15:03


الأصل




الأجوبة:


السبيل الوحيد لقد وجدت أن يعمل (ولقد حاولت فقط على أوبونتو) هو مع 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: تعتمد على الجهاز متوفرة إذا قام برنامج تشغيل الجهاز بتثبيته. قد يكون قادمًا على synaptics.

2: كثير الحدود موازين الحدود: تعمل السرعة كمعامل ، التسارع هو الأس. صالحة للاستعمال جدا ، الملف الموصى بها.

3: السلس الخطي المقاييس في الغالب خطية ، ولكن مع بداية ناعمة (غير خطية).

4: بسيطة التحولات بين التسارع / غير المتسرب ، ولكن مع نطاق انتقال سلس. هذا لديه مشكلة أساسية في التسارع على اثنين من niveaus ، والتي يبقى التسارع مستقلة عن السرعة. تقليديا التقصير ومع ذلك.

5: السلطة يتسارع من خلال وظيفة السلطة. السرعة هي الأس هنا. تلتزم بالعتبة. سيصعب التحكم بسهولة ، لذا من المهم أن تكون قد قمت بتعديل السرعة الخاصة بك بشكل صحيح.

6: خطي فقط خطي إلى السرعة والتسارع. بسيطة ونظيفة.

7: محدود يصعد بسلاسة إلى التسارع ، بحد أقصى في العتبة ، حيث تصبح مسطحة (محدودة).

لذلك يمكننا أن نرى أنه إذا قمنا بتعيين هذه الخاصية إلى -1 ، فسوف يتم تعطيل التسارع تمامًا.

$ xinput set-prop 10 259 -1

لذلك ليس لدينا الآن تسارع ، ولكن هل هذا ما نريد؟ الماوس بطيئة بعض الشيء الآن. للأسف هذا هو الحال. مع تعطيل التعطيل ، ستحصل على علاقة 1: 1 بين الماوس وشاشة العرض. يمكنك تحريك الماوس اليسار واحد نقطة وتحرك مؤشر الماوس بكسل واحد يسارًا. إذا كانت هناك طريقة لمضاعفة حركة الإدخال (لنقل بواسطة 2) ، فإن كل وحدة بكسل أخرى على كل محور ستكون غير مفهومة للماوس. وهذا من شأنه أن يجعل من دقة تحديد المواقع من الفأرة صعب جدا. إن إعداد "الحساسية" في بعض لوحات التحكم في الماوس في واجهة المستخدم الرسومية يقوم في الواقع بعكس ما تتوقعه - وأكثرها حساسية هي نسبة 1: 1 - إنه التسارع الذي يجعلها تبدو أسرع بكثير.

لذلك تريد حركة أسرع ، لكنك لا تريد تسريع. الطريقة الوحيدة التي يمكنك القيام بذلك في الأجهزة. في الأساس ، سوف تحتاج إلى شراء ماوس أكثر حساسية. ابحث عن واحد مع ارتفاع DPI (Dots Per Inch - نعم ، تماماً مثل الطابعة). أجد أن Microsoft IntelliEye القديم حساس بما فيه الكفاية مع تعطيل التعطيل ليكون صالح للاستخدام.

أو ربما يكون الماوس حساسًا جدًا؟ حتى مع تعطيل التعجيل انها سريعة جدا لترضيك؟ حسنا ، هذا هو المكان

Device Accel Constant Deceleration (260):      1.0000

يأتي الإعداد. هذا هو معدل تباطؤ ثابت (أو desensitizing). بشكل افتراضي يكون 1: 1 ولكن سوف يأخذ أي رقم (حتى الكسور) فوق ذلك. للحصول على بطء بسيط في الماوس:

$ xinput set-prop 10 260 1.2

أو تباطؤ كبير للعمل الدقيق حقا:

$ xinput set-prop 10 260 10

أو إعادته إلى الوضع الطبيعي:

$ xinput set-prop 10 260 1

هذا يعمل حتى عندما يتم تعيين ملف تعريف التسارع إلى -1 (معطل).


16
2018-03-20 23:02



ماذا يحدث إذا كنت أريد أقل حساسية مع ماوس DPI عالية؟ لا ، آسف ، 1: 1 لا يعمل فقط. والقيمة التالية ليست 1: 2 ، يمكن أن تفعل ، قل ، 1: 1.2. في الواقع ، أنا متأكد من أن شفرة التسريع الحالية لديها مليون طريقة مختلفة لتحسين السرعة وتحقيق دقة البكسل. إذا كان هناك فقط ملف تعريف "بدون تسريع" - بدلاً من "تعطيل subroutines تسريع تماما." - aib
aib تحقق من تعديلي - Majenko
أنا آسف ، إنه ليس مؤشر سرعة التباطؤ أحتاجه. (حسنا ، ربما يكون ذلك ، ولكن بعد أن قمت بتحجيم حركتي للماوس ، ودون شراء فأرة جديدة ، أشكركم.) - aib
يجب قبول هذا. لم أكن على علم بأن التباطؤ يمكن أن يطفو ، وليس مجرد عدد صحيح. شكر! الملف الشخصي لا شيء حقا إيقاف التسارع (على عكس في النوافذ). - inf3rno
في Debian Stretch هذه لم تعد تظهر: بعد الترقية ، فقدت خاصية Accel Accel ثابت التباطؤ ، وما لدي لهذا الفأر (xinput --list-props) لا يبدو أنه يؤثر عليه أكثر (تركه مع ليلة الفأر عديم الفائدة). - Jubatian


بالنظر إلى مصادر 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

2
2017-12-31 01:48



<3 شكرا لك. حتى يعمل لوضع النوم. - Simon A. Eugster


أعلم أن هذا أمر قديم ، لكنني أعتقد أنه يستحق إضافة إجابة لسؤال سبق طلبه. XSET سوف تقوم بهذه المهمة بالنسبة لك على الأرجح. كان الأمر الذي قمت بتشغيله xset m 1 1 ...

محتويات الصفحة للصفحة الخاصة بـ xset لقد نظمت من هنا xset (1) لك لخيارات الماوس:

الفأر

يتحكم الخيار m في معلمات الماوس ؛ قد يتم اختصارها إلى "m". المعلمات للماوس هي acceleration' andعتبة'. يمكن تحديد التسارع كعدد صحيح ، أو ككسر بسيط. سوف يذهب الماوس أو أي مؤشر متصل بالجهاز acceleration' times as fast when it travels more thanعتبة 'بكسل في وقت قصير. بهذه الطريقة ، يمكن استخدام الماوس لإجراء المحاذاة الدقيقة عندما يتم تحريكه ببطء ، إلا أنه يمكن ضبطه للتنقل عبر الشاشة بنقرة من المعصم عند الرغبة. يمكن حذف معلمة واحدة أو كلتيهما للخيار m ، ولكن إذا تم تقديم واحدة فقط ، فسيتم تفسيرها على أنها التسارع. إذا لم يتم استخدام أي معلمات أو "افتراضي" العلم ، سيتم تعيين افتراضيات النظام.

إذا كان threshold' parameter is provided and 0, theسيتم استخدام المعلمة acceleration '> في صيغة صيغة أكثر طبيعية ومستمرة> ، مما يعطي تحكمًا دقيقًا للحركة البطيئة ولكن الوصول الكبير للحركة السريعة ، والانتقال التدريجي للحركات بينهما. قيمة "التسريع" الموصى بها في هذه الحالة هي 3/2 إلى 2 ، ولكنها لا تقتصر على هذا النطاق.

تنويه: هذا لا ينجو من relogin / إعادة التشغيل دون خدعة إضافية ...


0
2017-11-06 18:54