Отключение ускорения мыши в X.Org (Linux)

Это - версия Linux моего ускорения мыши Отключения в вопросе о Mac OS X. Надо надеяться, я получу ответ на этот раз.

Я устал от ускорения мыши, и хотят иметь абсолютно линейный ответ мыши. Это легко достижимо через любой из этих приблизительно 5 методов (некоторые тонко подразумеваемые) на странице Wiki X.Org на ускорении указателя. Однако они также отключают скоростное масштабирование.

Я не хочу 1:1 отображающийся между устройством и координатами экрана. Я хочу 1:N отображение, где N является константой. Какие-либо идеи?

11
задан 20.03.2017, 12:17

1 ответ

Единственным путем я нашел, что работы (и только примерил Ubuntu), с 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. id=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: простые Переходы между ускорились/не ускорили, но с диапазоном плавного перехода. Это имеет фундаментальную проблему ускорения на двух снежных, на которых ускорение остается независимым от скорости. Традиционно значение по умолчанию как бы то ни было.

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

установка входит. Это - постоянное замедление (или уменьшающий чувствительность) отношение. По умолчанию это 1:1, но возьмет любое число (даже части) выше этого. Получить небольшое замедление мыши:

$ xinput set-prop 10 260 1.2

Или крупное замедление для действительно тонкой работы:

$ xinput set-prop 10 260 10

Или возвратите его нормальному:

$ xinput set-prop 10 260 1

Это работает, даже когда ускоряющий профиль установлен на-1 (Отключенный).

15
ответ дан 07.12.2019, 12:19

Теги

Похожие вопросы