Колесо мыши прокручивается в обратном направлении
Колесо мыши прокручивается в обратном направлении. Я перешел в " Системные настройки"> "Мышь и сенсорная панель"> "Естественная прокрутка", но независимо от того, какой вариант я выбрал, он все равно прокручивается в неверном для меня направлении.
Я сделал несколько других шагов, таких как издание .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/
Отключить естественную прокрутку. отключить прокрутку двумя пальцами.