Linux触摸板自然滚动

原创 2014年01月15日 16:30:07

原文发布在github.io博客


转载写明出处:http://landerlyoung.github.io/blog/2014/01/12/linuxchong-mo-ban-zi-ran-gun-dong/


触摸板的自然滚动最早是乔帮主发明的。

所谓自然滚动是指触摸板双指滚动的功能,当用两个手指向上滑动触摸板时,屏幕向上滚动,当双指向下化时,屏幕向下滚动。若是反过来就和鼠标一样了。自然滚动让人觉是得在用爽指控制屏幕而不是在控制触摸板。

开始觉得反人类,谁知道用习惯了才知道那真的很爽!爽到不想再用鼠标了。但是在linux系统里面触摸板还不是自然滚动。

我是synaptics的触摸板,方法一对其他触摸板不见得管用。如果不是synaptics的触摸板貌似也有利用xorg来改的方法,在文章后面再介绍。

1. synaptics 触摸板

首先要安装synapclient的驱动:xserver-xorg-input-synaptics。 其实在大多数linux系统内都已经默认按装了。

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

然后你可以用两个命令来设置垂直滚动和水平滚动的速度:

synclient VertScrollDelta=-103
synclient HorizScrollDelta=-103

这里把速度设置成负值意思就是让触摸板按照与原来方向的相反方向移动。需要说明的是数值的绝对值越大滚动越慢。

然后我们就达到目的了。为了让这两个命令开机的之后就能自动执行可以

  1. 把他们加到home目录里的.bashrc文件里。
  2. 或者在/etc/profile.d/里面创建一个脚本,比如我建立的是
    /etc/profile.d/synaptics\_natural\_scrolling.sh
1
2
3
4
5
6
7
8
9
###################################################################
# File Name:     /etc/profile.d/synaptics_natural_scrolling.sh
# Author:            Landerl Young
# e-Mail:            LanderlYoung@gmail.com
# Created Time:      Thu 31 Oct 2013 01:41:46 PM HST
###################################################################
#!/bin/bash
synclient VertScrollDelta=-103
synclient HorizScrollDelta=-103

最后别忘了加可执行权限

sudo chmod a+x /etc/profile.d/synaptics_natural_scrolling.sh

大功告成。

2. 其他方法(所有触摸板通用)

xorg有个xinput命令。如果,我是说如果,你没有这个命令的话,我帮你查好了它所在的软件包名——xinput

young@Y470:~/Documents/octopress$dpkg -S /usr/bin/xinput 
xinput: /usr/bin/xinput

输入之后(不加任何参数),有如下输出:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
young@Y470:~/Documents/octopress$xinput
 Virtual core pointer                        id=2  [master pointer  (3)]
    Virtual core XTEST pointer                id=4  [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)]
     Power Button                               id=8  [slave  keyboard (3)]
     Sleep Button                               id=9  [slave  keyboard (3)]
     Video Bus                                  id=10 [slave  keyboard (3)]
     Lenovo EasyCamera                          id=12 [slave  keyboard (3)]
     AT Translated Set 2 keyboard             id=13 [slave  keyboard (3)]
     Ideapad extra buttons                       id=15 [slave  keyboard (3)]
     ACPI Virtual Keyboard Device             id=16 [slave  keyboard (3)]

这里面就是各个输入设备了,看名字就猜得出来。可以使用xinput --get-button-map <设备名>显示按键映射,显示如下:

young@Y470:~/Documents/octopress$xinput --get-button-map "SynPS/2 Synaptics TouchPad" 
1 2 3 4 5 6 7 8 9 10 11 12 

于是下面要做的事就很明显了——改按键映射!既然有个--get-button-map参数肯定也有--set-button-map,没错,看了man手册发现真的有。经过测试各个按键的功能发现如下: 4、5、6、7四个值是控制触摸板滚动方向的,修改如下:

young@Y470:~/Documents/octopress$xinput --set-button-map "SynPS/2 Synaptics TouchPad" 1 2 3 5 4 7 6 8 9 10 11 12

为了使命令开机自动执行,可以使用方法一中介绍的两个方法。

当然方法二放在后面说是因为他有缺点——在一些少数程序比如文件管理器nautilus里面自然滚动失效的T^T。

win10触摸板滑动方向反向问题

查了中文资料没查到,google了一下马上找到了。附上链接 https://www.windowscentral.com/how-reverse-scrolling-direction-window...
  • qq_38619030
  • qq_38619030
  • 2017年11月08日 06:22
  • 570

Ubuntu中设置滚轮滚动方向为自然滚动

前言  因为不喜欢用Windows所以在实验室用的是Ubuntu的系统,可是和Mac OS不一样,Ubuntu的鼠标滚动方式和Windows是一致的,觉得很不习惯。这里附上一个不完美的解决方案。实现方...
  • xs18952904
  • xs18952904
  • 2017年07月14日 11:01
  • 306

Linux下的触摸板设置:以 Arch Linux 为例

原文链接:http://harttle.com/2013/10/27/synaptics-settings-linux.html软件安装安装 Synaptics 驱动# arch linux: pac...
  • yangjvn
  • yangjvn
  • 2015年08月01日 13:23
  • 2408

Linux 下触控板的配置

笔记本一般都有一个用来完成鼠标工作的设备,指点杆或是触控板,后者多一些。不过这个东西和标准的鼠标还不太一样,所以配置起来还是有一点玄机的,否则,功能可能无法充分发挥 ...
  • gnawuxx
  • gnawuxx
  • 2004年12月27日 19:18
  • 1531

Linux下的触摸板设置:以 Arch Linux 为例

原文链接:http://harttle.com/2013/10/27/synaptics-settings-linux.html软件安装安装 Synaptics 驱动# arch linux: pac...
  • yangjvn
  • yangjvn
  • 2015年08月01日 13:23
  • 2408

ubuntu linux 触控板失灵的解决方案

这几天研究内核的模块机制,看到in s mo d
  • u014292052
  • u014292052
  • 2014年11月17日 21:12
  • 1774

一些cmd命令和linux触摸板关启命令

一些cmd命令和linux触摸板关启命令
  • baidu_33268787
  • baidu_33268787
  • 2016年07月22日 14:50
  • 1312

Lenovo笔记本各类型触控板,触摸部分只能移动无法点击的问题汇总

文章编号:020574     2014/6/27 3:06:08 知识点分析: 笔记本触控板触摸部分只能移动、滑动,无法实现单击、双击功能,但触控按键板及外接鼠标均正常。 触控板在安装该...
  • xcntime
  • xcntime
  • 2015年12月05日 14:55
  • 2370

ThinkPad开启、禁用触摸板

郁闷啊,电脑插上鼠标显示“安装驱动程序失败”,摸索了半天,还是不行,来个关机重启,一下子把触摸板的图标给弄出来了,好奇心作怪,点吧了两下子,这一点不打紧,触摸板也用不了了,郁闷啊,鼠标不好使,触摸板还...
  • u010953431
  • u010953431
  • 2013年12月03日 22:36
  • 1701

Ubuntu下禁用/开启笔记本触摸板

楼主使用的Ubuntu系统,原有的开关触摸板按钮失效以后,就自己写了一个脚本控制触摸板开关:原理是通过更改设备的可用状态来控制开关...
  • kellncy
  • kellncy
  • 2016年12月11日 15:59
  • 626
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Linux触摸板自然滚动
举报原因:
原因补充:

(最多只允许输入30个字)