我不知道您使用的是哪个版本的Ubuntu,但在Ubuntu 13.04到Ubuntu 20.04(我猜测),可以通过鼠标和触摸板设置来实现。
首先,打开系统设置 > 鼠标和触摸板。如下面截图所示,如果有一个选项叫内容跟随手指,请勾选它。然后滚动条将以相反方向工作。我建议点击“测试您的设置”按钮来试用一下。
同样,您也可以通过DConf编辑器来访问此功能。要安装DConf编辑器,请运行以下命令:
sudo apt-get install dconf-editor
org.gnome.settings-daemon.peripherals.touchpad
并勾选natural-scroll
。
gsettings set org.gnome.settings-daemon.peripherals.touchpad natural-scroll true
org.gnome.desktop.peripherals.touchpad
,相应的命令也发生了变化。gsettings set org.gnome.desktop.peripherals.touchpad natural-scroll true
gsettings set org.gnome.desktop.peripherals.touchpad natural-scroll false
或者对于你的鼠标 gsettings set org.gnome.desktop.peripherals.mouse natural-scroll false
。(Fedora 24 将你的鼠标识别为触摸板,因此请使用带有 .touchpad
的命令行,参见 http://forums.fedoraforum.org/showthread.php?p=1778162&posted=1#post1778162 和 Fedora bug https://bugzilla.redhat.com/show_bug.cgi?id=1352159) - erik拿到你得到的那个数字(仅指"id="后面的数字),然后在下面的命令中用那个数字替换掉"{device id}"。xinput list
xinput list-props {device id} | grep "Scrolling Distance"
除非您在grep命令中使用-i,否则它是区分大小写的。记下您从该命令的输出中找到的数字(在我的情况下,它是数字1,以逗号分隔并显示三次)。您将使用输出中获得的数字的负值。此外,请确保记下属性编号(它将在输出中用括号括起来;在我的情况下,Ubuntu中为(272),Fedora中为(273))。
注意:如果您没有获得包含“滚动距离”属性的输出,则此方法对您无效,您需要在此处停止并跳转到本指南下面显示的备选方法。
在您的终端中运行以下命令:
现在,运行以下命令(你可以使用你喜欢的文本编辑器代替nano,但我使用nano):sudo touch /usr/share/X11/xorg.conf.d/20-natural-scrolling.conf
在您首选的文本编辑器中打开的文件中,粘贴以下内容(但请确保将数字更改为与第3步得到的逗号分隔的数字相同;在我的情况下,数字是1,所以我放了-1):sudo nano /usr/share/X11/xorg.conf.d/20-natural-scrolling.conf
保存文件并退出文本编辑器。无需重新启动。只需执行以下命令(替换属性编号、第三步中得到的负数以及第二步中得到的设备ID):Section "InputClass" Identifier "Natural Scrolling" MatchIsPointer "on" MatchDevicePath "/dev/input/event*" Option "VertScrollDelta" "-1" Option "HorizScrollDelta" "-1" Option "DialDelta" "-1" EndSection
你可能需要在某些系统上退出Nautilus并重新启动Nautilus(如果在运行上述命令后Nautilus的自然滚动正常工作,则跳过此步骤)。按下Alt+F2,分别运行以下每个命令:xinput set-prop {device id} {property number} -1 -1 -1
nautilus -q nautilus -n
就是这样!现在你应该拥有系统范围的自然滚动,它将持久存在。
另一种方法:
如果你不想安装最新版本的Evdev(或者,即使在最新的Evdev中,你的鼠标也没有“滚动距离”属性),你可以按照以下步骤操作:
在打开的终端中运行以下命令:
现在,运行以下命令(你可以使用你喜欢的文本编辑器代替nano,但我使用nano):sudo touch /usr/share/X11/xorg.conf.d/20-natural-scrolling.conf
在您所喜欢的文本编辑器中打开的文件中,粘贴以下内容:sudo nano /usr/share/X11/xorg.conf.d/20-natural-scrolling.conf
保存文件并重新启动。如上所述,个别用户可以使用Ubuntu-Tweak在每个用户的基础上关闭它,以“打开”自然滚动(它将是每个用户基础上与系统范围设置相反,但不会影响其他希望使用自然滚动的用户的实际系统设置)。Section "InputClass" Identifier "natural scrolling for mouse wheel" MatchIsPointer "on" MatchDevicePath "/dev/input/event*" Driver "mouse" Option "Device" "/dev/input/mice" Option "Protocol" "Auto" Option "ZAxisMapping" "5 4" EndSection
xinit set-prop
在~/.xinitrc
中加入一个简短的两行代码。也就是说,是否有必要对.conf
文件进行更改? - user70382gsettings set org.gnome.desktop.peripherals.touchpad natural-scroll false
(适用于触摸板和Fedora 24鼠标(Fedora 24中的错误)),或者gsettings set org.gnome.desktop.peripherals.mouse natural-scroll false
。请参阅http://forums.fedoraforum.org/showthread.php?p=1778162&posted=1#post1778162和Fedora bug https://bugzilla.redhat.com/show_bug.cgi?id=1352159。 - eriksynclient VertScrollDelta=50
解决了问题。 - Augustin Riedinger.conf
文件,参考自Arch wiki。 - Arch Stantonsudoedit /usr/share/X11/xorg.conf.d/50-synaptics.conf
/etc/X11/xorg.conf.d/50-synaptics.conf
下,然后进行编辑。cp /usr/share/X11/xorg.conf.d/50-synaptics.conf /etc/X11/xorg.conf.d/
sudoedit /etc/X11/xorg.conf.d/50-synaptics.conf
Identifier "touchpad catchall"
。 Option "VertScrollDelta" "-111"
Option "HorizScrollDelta" "-111"
这样它的内容就会变成:
Section "InputClass"
Identifier "touchpad catchall"
Driver "synaptics"
MatchIsTouchpad "on"
Option "VertScrollDelta" "-111"
Option "HorizScrollDelta" "-111"
# ...
synclient
。synclient VertScrollDelta=-111
synclient HorizScrollDelta=-111
50-synaptics-conf
文件中添加它们,重启后更改将不会保留。
如果您使用GNOME或Cinnamon桌面管理器,很有可能GNOME/Cinnamon的设置会覆盖您的自定义设置。为了防止GNOME/Cinnamon的设置覆盖您的设置,请打开dconf编辑器 [dconf-editor
] 并编辑以下条目:
/org/gnome/settings-daemon/plugins/mouse/
or
/org/cinnamon/settings-daemon/plugins/mouse/
111
,它表示速度,这意味着您可以通过调整该值来调节滚动速度以适应您的喜好。给它一个负值可以使其以相反的方向滚动。VertEdgeScroll
的方向与VertTwoFingerScroll
相反,但它们似乎是布尔值,而且这可能是一个疯狂的想法。http://www.x.org/archive/X11R7.5/doc/man/man4/synaptics.4.html - joeytwiddle50-synaptics-conf
应该改为 50-synaptics.conf
,否则在 Lubuntu 14.04 上这个方法对我有效。 - Peppe L-Gxorg.conf.d
文件夹和文件并不存在,所以我需要手动创建它们,并创建一个自定义的InputSection
。 - 0xAffeErr:19 http://ppa.launchpad.net/zedtux/naturalscrolling/ubuntu bionic Release 404 Not Found [IP: 2001:67c:1560:8008::15 80]
- mLstudent33.Xmodmap
的调整是否有效。 - Naftuli Kayxinput list
xinput list-props {device id} | grep "Scrolling Distance"
Synaptics Scrolling Distance (290): 102, 102
synclient VertScrollDelta=-102
synclient HorizScrollDelta=-102
/usr/share/X11/xorg.conf.d/20-natural-scrolling-touchpads.conf
Section "InputClass"
Identifier "Natural Scrolling Touchpads"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
Option "VertScrollDelta" "-111"
Option "HorizScrollDelta" "-111"
EndSection
仅限鼠标使用:
/usr/share/X11/xorg.conf.d/20-natural-scrolling-mouses.conf
Section "InputClass"
Identifier "Natural Scrolling Mouses"
MatchIsPointer "on"
MatchIsTouchpad "off"
MatchDevicePath "/dev/input/event*"
Option "VertScrollDelta" "-1"
Option "HorizScrollDelta" "-1"
Option "DialDelta" "-1"
EndSection
xev -event mouse
。你会得到一个小框,在你把鼠标移到那个区域时,终端里会生成大量数据。cp ~/.Xmodmap ~/.Xmodmap.bak
创建~/.Xmodmap
文件的备份。cat ~/.Xmodmap
命令。输出会像这样:pointer = 1 2 3 5 4 6 7 8 9 10 11 12
在上述输出中搜索x和y,它们将会连续出现并且只需要交换它们的位置。
在我的情况下,echo "pointer = 1 2 3 4 5 6 7 8 9 10 11 12" > ~/.Xmodmap && xmodmap ~/.Xmodmap
有效。注意4
和5
的位置互换。echo "pointer = 1 2 3 5 4 6 7 8 9 10 11 12" >>~/.Xmodmap && xmodmap ~/.Xmodmap
。 - tremby
gsettings set org.gnome.desktop.peripherals.touchpad natural-scroll true
对我起了作用。 - Yibo Yang