自己做的一个小程序,插入 USB 鼠标后能自动禁用笔记本触摸板

由本社区发起的开源项目
eighthson
帖子: 10
注册时间: 2008-01-12 13:57
送出感谢: 0
接收感谢: 0

自己做的一个小程序,插入 USB 鼠标后能自动禁用笔记本触摸板

#1

帖子 eighthson » 2009-03-11 15:24

插入 USB 鼠标后能自动禁用笔记本触摸板是一个很有用的功能,可惜在 Linux 中迟迟未能实现,所以我自己写了这个小程序。

要使用小程序,首先必须满足几点:

(1)正确安装并配置了 Synaptics,这方面内容可参见:http://wiki.ubuntu.org.cn/Synaptics%E8% ... 7%E5%8D%97

(2)完成(1)步骤后,在终端里输入 synclient touchpadoff=1,此时触摸板应该被禁用了;接着输入 synclient touchpadoff=0,触摸板应再次被打开;才可以进入步骤(3)。如果不能,请重做步骤(1)。

(3) 解包 xyuee.tar.gz,其中 xyuee.c 和 makefile 是源文件,仅供有兴趣查看代码的朋友使用(因时间关系没做注释,我会尽快补上);xyuee 是可执行文件,将其拷到 /usr/bin 目录下;然后在 /usr/share 目录下新建一个 xyuee 目录,将 解包得到的 MOUSE 文件拷到这里。

(4) 尝试在终端下运行 xyuee ,如果一切正常,程序应该阻塞在这里,按 Ctrl+C 结束它。

(5) 让程序开机自动运行,可以通过修改 /etc/rc.local 文件的方法:打开 /etc/rc.local,在 exit 0 句之前加入一句: xyuee 500 & ,注意“&”,一定要加上,否则可能阻塞。

(6) 再解释一下 xyuee 后面的参数问题,因为现在版本的程序用的是轮询方法检测鼠标,所以要指定轮询时间,以毫秒计,比如 500 就是半秒钟轮询一次,默认(即不指定任何参数)为1000毫秒。如果你希望程序反应速度快些就指定一个较小的值,如果希望占用系统资源少些就指定一个较大值。

好了,重启电脑,就实现了插入USB鼠标即禁用触摸板的功能了。希望大家用得愉快!
附件
xyuee.tar.gz
xyuee.tar.gz
(7.6 KiB) 下载 604 次
eighthson
帖子: 10
注册时间: 2008-01-12 13:57
送出感谢: 0
接收感谢: 0

Re: 自己做的一个小程序,插入 USB 鼠标后能自动禁用笔记本触摸板

#2

帖子 eighthson » 2009-03-11 15:30

……
上次由 eighthson 在 2009-03-11 15:39,总共编辑 1 次。
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

Re: 自己做的一个小程序,插入 USB 鼠标后能自动禁用笔记本触摸板

#3

帖子 eexpress » 2009-03-11 15:32

不是早发过,改一行udev规则的。
● 鸣学
eighthson
帖子: 10
注册时间: 2008-01-12 13:57
送出感谢: 0
接收感谢: 0

Re: 自己做的一个小程序,插入 USB 鼠标后能自动禁用笔记本触摸板

#4

帖子 eighthson » 2009-03-12 8:20

小程序与 eexpress 先生介绍的方法,原理是不同的。

eexpress 先生介绍的方法是通过“检测鼠标插拔动作”来禁止或打开触摸板。

而xyuee小程序是通过“检测USB总线上是否有(一个或多个)鼠标来打开或关闭触摸板”。

其结果是,在通常情况下,两种方法的效果是相同的。

但在一台笔记本上可能同时应用多个鼠标(或鼠标类指点设备)时,eexpress 先生的方法就不能完美解决问题了,举例:

在笔记本的US总线上接入一个鼠标,对于两种方法,触摸板都被禁用了;这时再接入一个鼠标,对两种方法,触摸板同样处于禁用状态;这时拔下任意一只鼠标,对于eexpress先生介绍的方法,触摸板被激活了!而xyuee方法,触摸板仍然处于禁用状态,因此它检测到USB总线上还是有一只鼠标。

这就是两种方法最大的不同。

呵呵,这种比较好象学究了一点,但那些源代码权且作为一种学习吧。
头像
bones7456
论坛版主
帖子: 8495
注册时间: 2006-04-12 20:05
来自: 杭州
送出感谢: 0
接收感谢: 8 次
联系:

Re: 自己做的一个小程序,插入 USB 鼠标后能自动禁用笔记本触摸板

#5

帖子 bones7456 » 2009-03-12 8:29

这个是EE说的方法,贴一下给需要的人: http://li2z.cn/2008/06/05/auto_disable_touchpad/
到底喜欢哪种就自己选吧。。。
关注我的blog: ε==3
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

Re: 自己做的一个小程序,插入 USB 鼠标后能自动禁用笔记本触摸板

#6

帖子 eexpress » 2009-03-12 8:54

是拉,那个udev规则,是太简单了。
应该是我们对udev还不了解,可能使用其他的actions,可以检测到存在这种状态。而不是插拔。这样就完善了。
● 鸣学
头像
greco
帖子: 2487
注册时间: 2007-04-06 10:24
来自: ~/Shanghai
送出感谢: 0
接收感谢: 0

Re: 自己做的一个小程序,插入 USB 鼠标后能自动禁用笔记本触摸板

#7

帖子 greco » 2009-03-12 8:55

bones7456 写了:这个是EE说的方法,贴一下给需要的人: http://li2z.cn/2008/06/05/auto_disable_touchpad/
到底喜欢哪种就自己选吧。。。
都不喜欢,我鼠标,触摸板都要用的
http://silenceisdefeat.com/~greco

代码: 全选

''.join([chr(ord(c)-2) for c in 'O{"G/ockn"ku<"itgeq0ujkBiockn0eqo'])
echo -n "Z3JlY28uc2hpQGdtYWlsLmNvbQ==" | base64 -d
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

Re: 自己做的一个小程序,插入 USB 鼠标后能自动禁用笔记本触摸板

#8

帖子 eexpress » 2009-03-12 8:57

greco, 这么快就一个帖子,试试 syndaemon -t -i 2 &。可能适合你。
● 鸣学
头像
greco
帖子: 2487
注册时间: 2007-04-06 10:24
来自: ~/Shanghai
送出感谢: 0
接收感谢: 0

Re: 自己做的一个小程序,插入 USB 鼠标后能自动禁用笔记本触摸板

#9

帖子 greco » 2009-03-12 9:51

eexpress 写了:greco, 这么快就一个帖子,试试 syndaemon -t -i 2 &。可能适合你。
-t = time?
-i = interval?

键盘敲击后2秒禁用触摸板?

我不想禁用呀,呵呵

搞不懂干嘛要禁用
http://silenceisdefeat.com/~greco

代码: 全选

''.join([chr(ord(c)-2) for c in 'O{"G/ockn"ku<"itgeq0ujkBiockn0eqo'])
echo -n "Z3JlY28uc2hpQGdtYWlsLmNvbQ==" | base64 -d
eighthson
帖子: 10
注册时间: 2008-01-12 13:57
送出感谢: 0
接收感谢: 0

Re: 自己做的一个小程序,插入 USB 鼠标后能自动禁用笔记本触摸板

#10

帖子 eighthson » 2009-03-17 11:35

程序中发现一处 BUG ,已修改,修改后的版本在附件中。
附件
0.4b.tar.gz
(7.61 KiB) 下载 151 次
头像
xiooli
帖子: 6956
注册时间: 2007-11-19 21:51
来自: 成都
送出感谢: 0
接收感谢: 3 次
联系:

Re: 自己做的一个小程序,插入 USB 鼠标后能自动禁用笔记本触摸板

#11

帖子 xiooli » 2009-03-17 11:41

没配置xorg.conf,连触摸板都不工作,没必要禁用咯 :em06
头像
forevercz
帖子: 325
注册时间: 2008-01-24 22:08
送出感谢: 0
接收感谢: 0

Re: 自己做的一个小程序,插入 USB 鼠标后能自动禁用笔记本触摸板

#12

帖子 forevercz » 2009-11-23 10:59

还是喜欢根据插拔动作来启用禁用,但是bones的教程我试了没用,不知为何 :em20 :em20
苍山有井独自空,星落天川映遥瞳;小溪流泉添花彩,松江孤岛一夜枫。
头像
CMWang
帖子: 261
注册时间: 2009-11-13 14:53
送出感谢: 0
接收感谢: 0

Re: 自己做的一个小程序,插入 USB 鼠标后能自动禁用笔记本触摸板

#13

帖子 CMWang » 2009-11-26 17:21

在win下也一直没有发现这类软件
以上内容全部来自互联网,本人并不识字,完全复制粘贴。

看帖者请于24小时内自觉、主动、完全忘记。

跟帖行为并不意味本人同意、支持、反对,或了解、知晓文中观点,如有任何疑问请直接联系原作者本人。故本人不对以上内容负法律责任(包括民法、刑法或婚姻法,及文中提及或未提及之法律),请勿跨村、跨乡、跨县、跨市、跨省、跨国、跨地球、跨太阳系、跨时空实施抓捕。

谢谢合作!
斗城听雨
帖子: 59
注册时间: 2007-03-15 20:57
送出感谢: 0
接收感谢: 0

Re: 自己做的一个小程序,插入 USB 鼠标后能自动禁用笔记本触摸板

#14

帖子 斗城听雨 » 2009-12-09 13:02

CMWang 写了:在win下也一直没有发现这类软件
win下是有这类软件,而且很早就有了吧。
头像
xiaomao101
帖子: 474
注册时间: 2006-04-05 18:12
送出感谢: 0
接收感谢: 0
联系:

Re: 自己做的一个小程序,插入 USB 鼠标后能自动禁用笔记本触摸板

#15

帖子 xiaomao101 » 2010-02-24 18:50

CMWang 写了:在win下也一直没有发现这类软件
因为在win下闭源驱动已经可以做到了。
回复

回到 “开源小工具”