Як я можу встановити чутливість миші, а не лише прискорення миші?


35

Я не можу знайти єдиного робочого середовища, яке підтримує налаштування як прискорення миші, так і чутливості миші. Я не хочу прискорення миші, але хочу збільшити швидкість своєї миші. Це означає, що якщо я переміщу мишку на однакову відстань, вказівник буде рухати однакову відстань кожного разу, незалежно від того, наскільки швидко я переміщую мишу.

KDE дозволить мені встановити прискорення миші на 1х, але миша рухається надто повільно, і я не можу зрозуміти, як збільшити швидкість. Я готовий прийняти рішення CLI, але мені вдалося xinputлише змінити прискорення. Я також не пам'ятаю, щоб мати велику удачу xset,


Ви не можете цього зробити, збільшуючи і прискорення, і поріг, при якому відбувається прискорення? Чи допомагає це ?
terdon

1
Я не думаю, що так. Якщо я правильно розумію, це просто залишить мене з повільною мишкою на 1x Accele, поки я не переміщу вказівник на певну відстань, на яку вступить би вступ. Я хочу, щоб мій вказівник завжди рухався з однаковою швидкістю . Я взагалі не хочу прискорення.
Девід Гей

Я також не впевнений, але, здається, я кудись потрапляю xset m 3 400, ідея полягає в тому, щоб встановити поріг досить високий, щоб ви його ніколи не проходили, щоб у вас не було прискорення як такого. Можливо, якщо ви трохи пограєте з цим?
terdon

Я знаю, що можу усунути прискорення, але хочу збільшити ШВИДКУ без прискорення. Підвищена швидкість, нульове прискорення. Я зараз розмовляю в #kde і, здається, єдиним рішенням може бути придбання миші з більшим DPI. : / Якщо я не отримаю хорошої відповіді через деякий час, я відповім на це як на неможливе.
Девід Гей

3
Про це запитали і відповіли на Ubuntu SE: askubuntu.com/questions/172972/…
Warren Young

Відповіді:


26

Просто змусьте вказівник пропустити пікселі, ось як:

Пристрої введення першого списку:

$ xinput list                                                               
⎡ Virtual core pointer                          id=2    [master pointer  (3)]                                 
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]                                 
⎜   ↳ PixArt USB Optical Mouse                  id=10   [slave  pointer  (2)]                                 
⎜   ↳ ETPS/2 Elantech Touchpad                  id=15   [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)]                                 
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]                                 
    ↳ Sleep Button                              id=8    [slave  keyboard (3)]                                 
    ↳ USB2.0 UVC 2M WebCam                      id=9    [slave  keyboard (3)]                                 
    ↳ Asus Laptop extra buttons                 id=13   [slave  keyboard (3)]                                 
    ↳ AT Translated Set 2 keyboard              id=14   [slave  keyboard (3)]                                 
    ↳   USB Keyboard                            id=11   [slave  keyboard (3)]                                 
    ↳   USB Keyboard                            id=12   [slave  keyboard (3)]   

У прикладі ми бачимо, що ідентифікатор миші дорівнює 10. Наступний список його властивостей:

$ xinput list-props 10
Device 'PixArt USB Optical Mouse':
        Device Enabled (140):   1
        Coordinate Transformation Matrix (142): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
        Device Accel Profile (265):     0
        Device Accel Constant Deceleration (266):       1.000000
        Device Accel Adaptive Deceleration (267):       1.000000
        Device Accel Velocity Scaling (268):    10.000000
        Device Product ID (260):        2362, 9488
        Device Node (261):      "/dev/input/event5"
        Evdev Axis Inversion (269):     0, 0
        Evdev Axes Swap (271):  0
        Axis Labels (272):      "Rel X" (150), "Rel Y" (151), "Rel Vert Wheel" (264)
        Button Labels (273):    "Button Left" (143), "Button Middle" (144), "Button Right" (145), "Button Wheel Up" (146), "Button Wheel Down" (147), "Button Horiz Wheel Left" (148), "Button Horiz Wheel Right" (149)
        Evdev Middle Button Emulation (274):    0
        Evdev Middle Button Timeout (275):      50
        Evdev Third Button Emulation (276):     0
        Evdev Third Button Emulation Timeout (277):     1000
        Evdev Third Button Emulation Button (278):      3
        Evdev Third Button Emulation Threshold (279):   20
        Evdev Wheel Emulation (280):    0
        Evdev Wheel Emulation Axes (281):       0, 0, 4, 5
        Evdev Wheel Emulation Inertia (282):    10
        Evdev Wheel Emulation Timeout (283):    200
        Evdev Wheel Emulation Button (284):     4
        Evdev Drag Lock Buttons (285):  0

Ми хочемо «Матрицю перетворення координат», пам’ятаємо її №142.

Змінивши цю властивість, ми можемо збільшити швидкість вказівника. Це матриця перетворення, яка використовується для обчислення руху вказівника . За посиланням:

За замовчуванням CTM для кожного пристрою введення в X є матрицею ідентичності. Наприклад, дозвольте торкнутися сенсорного екрана в точці (400, 197) на екрані:

⎡ 1 0 0 ⎤   ⎡ 400 ⎤   ⎡ 400 ⎤
⎜ 0 1 0 ⎥ · ⎜ 197 ⎥ = ⎜ 197 ⎥
⎣ 0 0 1 ⎦   ⎣  1  ⎦   ⎣  1  ⎦

Координати X і Y події пристрою вводяться у другій матриці обчислення. Результатом обчислення є те, де координати X і Y події відображаються на екрані. Як показано, матриця ідентифікації відображає координати пристрою на координатні екрани без будь-яких змін.

Отже, ми хочемо збільшити значення відповідно до x і y , тим самим збільшуючи швидкість покажчика. Приклад з мого ПК:

$ xinput set-prop 10 142 2.400000, 0.000000, 0.000000, 0.000000, 2.400000, 0.000000, 0.000000, 0.000000, 1.000000

Це так xinput set-prop <device-id> <property-number> <property-values>. Пограйте трохи з цим, поки не знайдете відповідного. Примітка: не змінюйте останнє значення матриці. Це була моя помилка, коли я спробував її влаштувати на роботу - у цьому випадку ви просто не побачите різниці.

Подяка: Я вдячний Саймону Туму з списку розсилки xorg, саме він дав підказку про матрицю.

UPD : зауважте, деякі ігри Windows, що працюють з Wine, можуть мати дивну поведінку вказівника (наприклад, зауважили, що мета старого Counter Strike 1.6 знижується до тих пір, поки вона не дивиться на підлогу, незалежно від того, як ви рухаєте мишкою) , у цьому випадку просто скиньте x і y CTM до 1 перед запуском гри.


1
@ Wyatt8740 Нещодавно я зазначив, що в деяких випадках номер властивості може змінюватися самостійно, для такого випадку замість числа можна використовувати ім’я пристрою / властивості. Тобто з моїм пристроєм: xinput set-prop "PixArt USB Optical Mouse" "Coordinate Transformation Matrix" 2.400000, 0.000000, 0.000000, 0.000000, 2.400000, 0.000000, 0.000000, 0.000000, 1.000000.
Привіт-Ангел

так, я використовував і ці рядки.
Wyatt8740

1
Дивовижне, єдине, що для мене працює
MichalH

17

Далі було скопійовано дослівно з відповіді, яку @Luke опублікував у Ask Ubuntu. Я публікую це як відповідь у вікі спільноти, щоб інформація могла бути і на цьому веб-сайті.


KDE ще не вбудував це у свій центр управління, але ви можете використовувати xinput з командного рядка. Спочатку запустіть, xinput listщоб знайти номер пристрою вашої миші:

$ xinput list
⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=10   [slave  pointer  (2)]
⎣ Virtual core keyboard                         id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=9    [slave  keyboard (3)]

На моєму ноутбуці потрібний ідентифікатор пристрою 10 (SynPS / 2 Synaptics TouchPad). У вашій системі вам доведеться вирішити, який пристрій є правильним. Далі запустіть, xinput list-props <your device id>щоб переглянути поточні налаштування для цього пристрою:

$ xinput list-props 10
Device 'SynPS/2 Synaptics TouchPad':
    Device Enabled (144):   1
    Device Accel Profile (266):     1
    Device Accel Constant Deceleration (267):       2.500000
    Device Accel Adaptive Deceleration (268):       1.000000
    Device Accel Velocity Scaling (269):    12.500000
  [ many more settings omitted ]

Властивість, яка вас цікавить, - це "Постійне уповільнення приладу пристрою (267)". Щоб уповільнити мишу, значення потрібно збільшити, запустивши xinput set-prop <your device id> <property id> <value>:

$ xinput set-prop 10 267 5.0

У цьому прикладі значення збільшується з 2,5 до 5,0 і миша рухається з половиною швидкості.


Пояснення властивостей можна знайти на X.org .

Якщо ви використовуєте це в сценаріях, використання повних імен може допомогти, оскільки id тощо може змінитися. Наприклад:

xinput --set-prop "SynPS/2 Synaptics TouchPad" "Device Accel Constant Deceleration" 1

Якщо ви не згодні з тим, що я тут зробив, приходьте, скажіть мені про це на мета-пості.
terdon

1
Якщо ви могли лише уточнити: чи має відношення до постійного уповільнення Device Accel "прискорення чи чутливість? Скажіть, будь ласка, приклад команди для мого запитання? Той, який видаляє все прискорення миші, але все ж дозволяє мені підвищити чутливість миші (БЕЗ прискорення)?
Девід Гей

@oddshocks чесно, я поняття не маю. Я скопіював це з сайту, на який я посилаюся. Це також сайт SE, я б просто пішов запитати їх.
terdon

@terdon, як я можу збільшити швидкість вказівника миші? Варіант, який ви вказали, за замовчуванням встановлений на «1,0», і спроби зменшити його, надаючи негативне значення, або, принаймні, щось на кшталт «0,1» викликає помилку.
Привіт-Ангел

1
Це працює лише в тому випадку, якщо ваш пристрій дозволяє таку опцію, яку моя не зробила. Можна перевіритиxinput list-props <device-id>
Франклін

4

Якщо ви використовуєте Xorg.conf для налаштування свого X-сервера, ви можете використовувати це для встановлення прискорення або уповільнення. Просто додайте щось до ефекту:

Section "InputDevice"
    Identifier "name"
    Driver "evdev"
    Option "ConstantDeceleration" "multiplier"
EndSection

де множник - скільки разів повільніше ви хочете, щоб миша йшла. 0,5 вдвічі перевищить швидкість, або 2 вдвічі зменшить її. Еквівалентно, хоча і складніше:

Section "InputDevice"
    Identifier "name"
    Driver "evdev"
    Option "TransformationMatrix" "a b c d e f g h i"
EndSection

де "a" через "i" є матрицею перетворення, як описано в інших відповідях.
Джерело: manorg.conf manpage


2

У Mint 17.2 + Cinnamon використовуються такі налаштування, але я думаю, що це працює і у вашому середовищі.

xinput list # to get the id of your mouse
xinput list-props 10 # to list the properties of your mouse
xinput set-prop 10 'Device Accel Profile' -1 # turns off mouseaccel
xinput set-prop 10 'Device Accel Constant Deceleration' 1.5 # settings the sens

Я пропоную вам встановити DPI на миші максимум спочатку (у мене є кнопки для цього). Після цього ви можете зменшити сповільнення, якщо у вас все ще занадто низький рівень чутливості.

Якщо все в порядку, ви можете помістити це у відповідний файл у вашій системі, щоб він завантажив настройки завантаженням. Для мене цей файл - це ~/.xinputrc.

Деякі відомості про ці властивості xinput: http://www.x.org/wiki/Development/Documentation/PointerAcceleration/

(Примітка: я люблю Linux! , Мені вдалося вимкнути це на Linux Mint. :-) Це було трохи пізно, я закінчив свій ігровий оператор хоча б частково через це. Це означало -20% точності в моєму FPS. Тож я грав на 40% замість 50-60% акцій, що є низьким середнім вмінням замість високого. Гра тепер мертва, але все ж це випуск, що мені не доведеться переносити цю річ з мишею, використовуючи операційну систему.)


0

в Ubuntu 16.04 властивість для моєї миші:

Device Accel Constant Deceleration (279)

За замовчуванням встановлено 1,0. Якщо ви збільшите значення, то ваша миша сповільниться.


0

спробуйте LXInput, це те, що я використовую, я не усвідомлював, яке прискорення та чутливість робив, поки не прочитав ваш пост ^ (так дякую!), що він знаходиться в стандартному сховищі для ubuntu 16.04. Зауважте, що я встановлюю DPI миші через Solaar, тому не переконайтесь, що Solaar та LXInput взаємодіють таким чином, що зробить LXInput самостійним. редагувати вибачте Я думаю, що "чутливість" і "прискорення" LXInpu відрізняються швидкістю. Я думаю, що "чутливість" є настільки чутливим прискоренням. вибачте. Однак-> Solaar, безумовно, може бути використаний для встановлення DPI / Speed ​​для мишей Logitech, але тільки останні з github, а не ті, що в репозиторіях


LXInput - програма GUI для легкого робочого середовища X11 (LXDE).

Він налаштовує налаштування клавіатури та миші:

  • Затримка та інтервал для повторення символів * Увімкнення / вимкнення звукових сигналів помилки введення клавіатури * Зміна лівої та правої кнопок миші * Прискорення та чутливість миші

0,3.5-1 Ubuntu

406,5 кБ

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.