为 Synaptics 触摸板启用 Natural Scrolling

Natural Scrolling 又叫 Australian Scrolling, 指的是在触摸板上双指或是利用侧面滚动的时候,页面的滚动方向和传统的滚动方向相反。也就是说,当用户双指同时向上滚动的时候,网页会向上移动,或者说视界向下移动。Mac OS X 上默认是用了这种滚动方向的。Google Chrome OS 在设置里也可以很方便地启用。

我不知道有多少 Linux 用户跟我一样有这样的需求:我想在触摸板上使用 Natural Scroll (这样感觉起来更自然),但是在鼠标上使用传统的滚动方向(因为多年的使用习惯,也因为向下翻页比向上多,而鼠标滚轮向下滚的动作更舒服)。当然这些原因都是很主观的,这篇笔记主要是记录一下如何操作。Linux 系统里的设置往往是把两个一起改了,我目前身边所有电脑的触摸板都是 Synaptics 的,所以我在这里用 synclient 来完成。

先安装一下 xserver-xorg-input-synaptics

sudo apt-get install xserver-xorg-input-synaptics

然后用这样的方式试一试效果:

synclient VertScrollDelta=-111
synclient HorizScrollDelta=-111

应该是立即生效的,可以调整后头的数字来调节灵敏度,数字绝对值越小页面滚动越快。正数代表传统滚动方式,而负数代表 Natural Scrolling. 我觉得 -75 到 -111 是比较合适的。

多试几个数字之后找到自己觉得舒服的,然后就可以想办法让它永久生效了。我采用的方法是把以上两行写入脚本,在每次系统登陆的时候自动执行。另一种方法是编辑 /usr/share/X11/xorg.conf.d/50-synaptics-conf 这个文件,在 "InputClass" 部分修改或加入以下内容

Option "VertScrollDelta" "-111"
Option "HorizScrollDelta" "-111"