Колесо мыши прокручивается в обратном направлении

Колесо мыши прокручивается в обратном направлении. Я перешел в " Системные настройки"> "Мышь и сенсорная панель"> "Естественная прокрутка", но независимо от того, какой вариант я выбрал, он все равно прокручивается в неверном для меня направлении.

Я сделал несколько других шагов, таких как издание .map* файл в моем домашнем каталоге, но он тоже не работал.

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

7 ответов

Вы должны использовать xinput, чтобы отключить естественную прокрутку.

Открытый терминал:

~$ xinput list

Вывод должен быть примерно таким:

⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳         USB Keyboard                      id=10   [slave  pointer  (2)]
⎜   ↳ ImPS/2 BYD TouchPad                       id=11   [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)]
    ↳ Power Button                              id=8    [slave  keyboard (3)]
    ↳         USB Keyboard                      id=9    [slave  keyboard (3)]
    ↳         USB Keyboard                      id=12   [slave  keyboard (3)]

Смотри, TouchPad ID =11.

~$ xinput list-props 11

Вывод должен быть примерно таким:

Device 'ImPS/2 BYD TouchPad':
    Device Enabled (135):   1
    Coordinate Transformation Matrix (137): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    libinput Accel Speed (274): 0.000000
    libinput Accel Speed Default (275): 0.000000
    libinput Accel Profiles Available (276):    1, 1
    libinput Accel Profile Enabled (277):   1, 0
    libinput Accel Profile Enabled Default (278):   1, 0
    libinput Natural Scrolling Enabled (271):   1
    libinput Natural Scrolling Enabled Default (272):   0
    libinput Send Events Modes Available (255): 1, 0
    libinput Send Events Mode Enabled (256):    0, 0
    libinput Send Events Mode Enabled Default (257):    0, 0
    libinput Left Handed Enabled (279): 0
    libinput Left Handed Enabled Default (280): 0
    libinput Scroll Methods Available (281):    0, 0, 1
...

Посмотрите это, libinput Natural Scrolling Enabled (271): 1.

Вам нужно установить его на 0.

xinput set-prop 11 271 0

Этот ответ в значительной степени основан на ответе grisotto, который работает, но не переживает перезагрузки на моей машине.

Это почти автоматизирует процесс:

Получите ваше имя устройства указателя:

$ xinput list
⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ VirtualBox mouse integration              id=9    [slave  pointer  (2)]
⎜   ↳ ImExPS/2 BYD TouchPad                     id=11   [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)]
    ↳ Sleep Button                              id=7    [slave  keyboard (3)]
    ↳ Video Bus                                 id=8    [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=10   [slave  keyboard (3)]

В моем случае это ImExPS/2 BYD TouchPad хотя это мышь. Далее получите идентификатор свойства libinput Natural Scrolling Enabled:

$ xinput list-props 11  # use the id or the name of the pointer device
Device 'ImExPS/2 BYD TouchPad':
    Device Enabled (119):   1
    Coordinate Transformation Matrix (121): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    libinput Accel Speed (271): 0.000000
    libinput Accel Speed Default (272): 0.000000
    libinput Accel Profiles Available (273):    1, 1
    libinput Accel Profile Enabled (274):   1, 0
    libinput Accel Profile Enabled Default (275):   1, 0
    libinput Natural Scrolling Enabled (261):   0
    libinput Natural Scrolling Enabled Default (262):   0
    libinput Send Events Modes Available (241): 1, 0
    [snip]

Вот это 261, Теперь используйте имя вашего указателя устройства (так как идентификатор может измениться при перезагрузке) и идентификатор свойства (остается прежним) и поместите эти строки в ваш ~/.bashrc, В моем случае это:

device=$(xinput list --id-only 'ImExPS/2 BYD TouchPad')
xinput set-prop $device 261 0

Мне все еще нужно открывать и закрывать терминал при каждой загрузке, так как мой .bashrcне читается при загрузке и не работает в .profile но это всего три клика.

В моем случае не было Natural Scrolling установка, но вместо Evdev Scrolling Distance,

Сначала: выясните устройство:

xinput list

Поскольку это меняется при каждой загрузке (см. Ответ robsn), получите идентификатор по имени и сохраните его в var:

device=$(xinput list --id-only 'Logitech USB Laser Mouse')

Дважды проверьте, что у вас действительно есть собственность Edev Scrolling Distance:

xinput list-props $device

И затем установите его с помощью:

xinput set-prop $device "Edev Scrolling Distance" -1 1 1

Чтобы включить это при каждой загрузке, добавьте device= а также set-prop команды к вашему ~/.xsessionrc файл.

Этот ответ является автоматизацией метода с помощью robsn, так что он выполняется при каждой загрузке.

Получите ваше имя устройства указателя:

$ xinput list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Logitech USB Optical Mouse                id=9    [slave  pointer  (2)]
⎜   ↳ PS/2 Generic Mouse                        id=13   [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=14   [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)]
    ↳ CHICONY HP Basic USB Keyboard             id=10   [slave  keyboard (3)]
    ↳ HP HD Webcam                              id=11   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=12   [slave  keyboard (3)]
    ↳ HP Wireless hotkeys                       id=15   [slave  keyboard (3)]
    ↳ HP WMI hotkeys                            id=16   [slave  keyboard (3)]

В моем случае, "Logitech USB Optical Mouse".

Затем создайте файл natural_scrolling.sh на своем пути:

#!/bin/bash

device=$(xinput list --id-only 'Logitech USB Optical Mouse'); 
xinput set-prop $device 295 1

exit 0;

(замените "Оптическая мышь Logitech USB" на имя мыши).

Добавьте разрешение на выполнение в файл. Затем откройте автозагрузку приложений и создайте новую запись, когда строка "command" указывает на этот файл.

Это автоматически включает естественную прокрутку для меня.

(Примечание: если вы используете ubuntu-tweak, отключите естественную прокрутку там, так как кажется, что она конфликтует с этим методом - я включил ее, и некоторые приложения вызывали прокрутку другим способом).

Я также использовал xinput для изменения направления вращения колеса. Свойство направления колеса в моем компьютере Evdev Scrolling Distance (272), Кроме того, вам может потребоваться выйти из nautilus и перезапустить nautilus:

    nautilus -q
    nautilus -n

чтобы сохранить это изменение.

Спасибо за упоминание Natural Scroll, в настройках Ubuntu есть переключатель (который я нажал, предполагая, что прокрутка будет более мягкой или что-то в этом роде). Никогда бы не принял эту функцию с таким именем.

Также для людей, которые читают это, которые хотят переключать эту опцию через графический интерфейс. Вы можете установить твики Ubuntu и найти опцию под твиками> Разное> Естественная прокрутка.

На этом сайте есть.deb для настроек Ubuntu. http://ubuntuhandbook.org/index.php/2016/05/install-ubuntu-tweak-in-ubuntu-16-04/

Отключить естественную прокрутку. отключить прокрутку двумя пальцами.

Другие вопросы по тегам