Linux触摸板的控制


今天遇到一个问题,说单独的执行synclient touchpadoff=0命令可以打开触摸板,但是把此命令写道对应的rc.locale文件中不能执行。但是修改/etc/X11/xorg.conf文件是可以的。没有明白他们说的什么意思,就详细学习了一下。
 
总结如下:先看了一下这个synclient命令是怎么回事?
 
[root@xmpan ~]# which synclient /usr/bin/synclient [root@xmpan ~]# rpm -qf /usr/bin/synclient xorg-x11-drv-synaptics-0.15.2-1.i386同时man了一下synclient,看到的结果:“commandline utitlity to query and modify Synaptics driver options.”
 
同时说明部分也这样写的:"This program lets you change your Synaptics TouchPad driver for XOrg/XFree86 server parameters while X is running if you enabled SHMConfig "on" in your XOrg/XFree86 configuration. WARNING: This is not secure if you are in an untrusted multiuser environment.  All local users can change the parameters at any time. "同时参考一些其他的资料,基本上就是:开启SHMConfig选项,synclient这个工具通过共享内存来控制触摸板。
 
实例:要禁用EdgeMotionSpeed :synclient EdgeMotionSpeed=0监测触摸板活动:synclient -m 100同时也可以参考:Xorg1), syndaemon1), synaptics4)
 
这下明白了synclient是和xserver有关关系的,命令写道rc.locale中肯定是不能执行的,嘻嘻~接下来查了一下我系统上的synaptics包,包含的东西如下:[root@xmpan ~]# rpm -ql xorg-x11-drv-synaptics-0.15.2-1.i386 /usr/bin/synclient /usr/bin/syndaemon /usr/lib/xorg/modules/input/synaptics_drv.so /usr/share/doc/xorg-x11-drv-synaptics-0.15.2 /usr/share/doc/xorg-x11-drv-synaptics-0.15.2/COPYING /usr/share/doc/xorg-x11-drv-synaptics-0.15.2/README /usr/share/hal/fdi/policy/20thirdparty/10-synaptics.fdi /usr/share/man/man1/synclient.1.gz /usr/share/man/man1/syndaemon.1.gz /usr/share/man/man4/synaptics.4.gz有synclient和syndaemon命令和文档,man 一下synaptics,才知道他就是一个触摸版的驱动程序,让用户调整触控板的设置,提高他的性能,包括灵敏度的调整,挖掘人/双人窃听设置,而且还有很多独特的功能等。 对应的参数也是很多,可以通过修改系统的xorg文件中 Section "InputDevice"中相应的参数实现。由于包含的参数太多这里就不做研究了,有兴趣的大家可以man一下这个模块或是看一下这个软件包释放出的 README文档中的FAQ.下面详细写一下怎么实现对笔记本的触摸板的控制:许多笔记本touchpad设计不合理,触摸板很容易被碰到,影响正常的编辑。那能不能在在需要的时候打开触摸板,不需要的时候关闭它呢?答案是可以的。
 
首先修改xorg.conf文件[root@xmpan ~]#vi /etc/X11/xorg.conf找到synaptic这一段,添加两个东西,首先是共享内存控制,一个是初始化触摸板的状态。
 
Section “InputDevice”
 
Identifier “Synaptics Touchpad”
 
Driver “synaptics”
 
Option “SendCoreEvents” “true”
 
Option “Device” “/dev/psaux”
 
Option “Protocol” “auto-dev”
 
Option “HorizScrollDelta” “0″# 打开共享内存控制Option ”SHMConfig“ ”on“
 
# 触摸板初始化为关闭Option “TouchpadOff” “1″# 触摸板初始化为开启Option ”TouchpadOff“ ”0″EndSection保存xorg.conf重新启动X启动X后使用工具synclient通过共享内存来控制触摸板# 关闭触摸板synclient touchpadoff=1 # 打开触摸板synclient touchpadoff=0命令太长了可以在 $HOME/.bashrc建立两个alias代码如果没有效果请重新输入一遍,估计是编码问题)
 
alias synoff=‘synclient touchpadoff=1′alias synon=’synclient touchpadoff=0′重新更新alias。 ~/.bashrc现在我们可以通过简单的synon和synoff打开和关闭触摸板了。
 
实际上触摸板的“速度”也可以通过修改xorg.conf解決. Option “MinSpeed” “0.3″Option ”MaxSpeed“ ”0.75″可根据自己的需要调整数值,数值越大速度越快。

  1. Linux集群基础
  2. Opera将推出Mobile Linux
  3. 玩转linux之二-驱动开发技术探析


相关内容