在键入不起作用时禁用触摸板


Answers:


49

该命令对我有用(1是按下最后一个键之后等待的秒数,然后重新启用触摸板,将其更改为所需的任何值):

syndaemon -i 1 -K -d

只需将其添加到“启动应用程序”中,即可使其在重新启动/关闭后正常工作。要查看更多选项,请在终端中键入以下命令:

syndaemon --help or man syndaemon

4
对我有用(Ubuntu 13.10),但在我经常使用的Asus K55N中也禁用了两指滚动功能。
nicooga 2014年

5
适用于我(Ubuntu 14.04,Lenovo T410),并且两指滚动仍然有效。但是,如果将其添加到“启动应用程序”中,则还必须在“鼠标和触摸板”设置中取消选中 “键入时禁用” ,否则这两种机制会相互干扰,并且触摸板会完全停止工作。您可以在此处对错误报告进行投票:bugs.launchpad.net/ubuntu/+source/xserver-xorg-input-synaptics/…– simonp 2014
6

像吊饰一样工作(Ubuntu 14.04 LTS)。我测试了一下,输入时光标没有移动1cm的70%(如果有的话)
dlundy1 2015年

适用于Linux Mint 17.2
Jozef

simonp可能在此处找到相关的Ubuntu错误#1215463
JdeBP

24

像这里的其他人一样,syndaemon实用程序解决了我的问题。对我而言,syndaemon已在运行。

在使用它并阅读了一些其他答案之后,我确定原因是可-t选项。

该选项必须有一个错误,因为指定该选项后,我仍然可以在键入时滚动并点击。但是,如果您完全省略该选项,则一切正常。当您不包括该-t选项时,整个触摸板会在键入时按预期禁用。我只需运行以下命令即可重新启动syndaemon -t

$ killall syndaemon
$ syndaemon -i 1 -KRd

  • -i允许您指定打字停止后syndaemon应该等待多长时间,然后才能重新启用触摸板。一秒钟就是已经运行的内容,对我来说似乎很好。
  • -K 告诉syndaemon在监视键盘输入时忽略修饰键和修饰符+键组合。
  • -R告诉syndaemon使用“ XRecord”扩展名而不是轮询键盘输入。我想它出于性能原因使用它;该扩展名可能会在键入活动停止时报告,而不是依靠syndaemon来不断轮询键盘以查看是否有输入。
  • -d只是告诉syndaemon启动时在后台运行,而不会阻止终端输入。如果您不包括此选项,则关闭终端时syndaemon将停止。

因此,最终,-t这才是罪魁祸首。只要在没有它的情况下运行syndaemon,一切就很好。

PS-我的机器是原装的Lenovo Yoga 13,以防万一。我完全吹走了Windows安装,并替换为Ubuntu 14.04。


1
谢谢!我在16.04以下的Lenovo T450上遇到(仍然!)相同的问题。我认为这终于解决了。!但是您是否提交了错误报告?如果没有,这里是一个:bugs.launchpad.net/ubuntu/+source/xserver-xorg-input-synaptics/…–
CPBL

我尚未创建票证。感谢您这样做:)
Chev

实际上,在T450和16.04上,它可以立即工作,但是经过一段时间(有时与睡眠有关)后,我完全失去了光标,必须重新启动。因此,这仍然不是可行的解决方案。
CPBL

谢谢。您的评论使我意识到了为什么此命令没有任何效果。syndaemon在后台运行的实例有5个。
ecc

就我而言,我不必杀死syndaemon,它没有运行。具有Ubuntu 18.04的Lenovo Yoga 13。而且,使用-i 0.5会使syndaemon的侵入性降低。很棒的发现!
maaw

19

尝试从Ubuntu软件中心安装Pointing Devices。通过键入“指向设备”,然后单击“安装”。安装完成后,从破折号打开程序。程序打开后,触摸板应显示(以及插入的所有其他鼠标)。单击您的触摸板,palm detection应该会显示名为的选项。将range一路lowpressurehigh。然后将其关闭。如果那不能解决问题,请回应。


1
这在我的华硕ZenBook Prime UX32A上不起作用。指针设备程序似乎没有保持“在连接其他设备时禁用”设置,并且手掌检测似乎不起作用。
noisygecko

Egad,这有很大帮助。我已经适应了流血的指针在多大程度上干扰了我的工作。每次安装Ubuntu时,我都厌倦了编写shell脚本,然后手动调整数字,直到正确为止。感谢您的花絮。
B先生

手掌检测似乎不起作用。输入此注释时,我可以用一根手指移动触摸板。[经过测试的Ubuntu 14.04,Lenovo y510p笔记本电脑]可能相关:我注意到单击“确定”并重新打开后,高/低滑条不会保留我的设置。(最新安装的14.04版)
乔纳森(Jonathan

我也可以在键入时移动指针,但是安装后,在键入时点击触摸板不会将文本光标移动到指针位置,所以现在我很高兴!(Ubuntu Gnome 14.04 + Gnome 3.12,联想Carbon X1 Gen2)。
Rasmus 2014年

作为@Rasmus,但在Dell Inspiron 17R上使用Ubuntu 14.04。
tigerjack89 2014年

6

我尝试了所有提到的选项,但是没有一个起作用。然后我发现了这个魔术命令,对我有用。试试这个,也许它会为您工作

syndaemon -i 1 -K -d

你是说-d吗?

你要-d。该-K选项不带值,它告诉syndaemon在监视键盘输入时忽略修饰键和修饰符+键组合。-d告诉syndaemon在后台运行,而不是占用终端。
Chev

变魔术,这是(没有-K)
Zlatev

禁用触摸板:(
阿米尔

1
我使用的是Dell XPS 9550,这对AAFICT没有任何作用
Alexander Mills

1

我遇到了同样的问题-即使选中了该选项,也无法正常工作。我通过从Ubuntu软件中心安装Synaptics Touchpad修复了它(似乎默认情况下未安装它)。

安装后,我将其访问到破折号,然后在键入时使用它来禁用触摸板。您还可以设置检测到键盘活动时应保持不活动状态的时间。


我没有看到“ Synaptics触摸板”。我看到了驱动程序,但看不到。您是否添加了自定义来源?[经过测试的Ubuntu 14.04]
Jonathan

我给出的答案在Kubuntu 13.04中有效。我最近升级到14.04,现在也看不到突触(就像您提到的那样只是驱动程序)。
dwcoder 2014年

我现在只是用手打开“指针设备”,每次插入鼠标时便手动禁用触摸板= / [14.04]
Jonathan

1

由于已确认的错误报告中所述的Ubuntu中的错误,“ 系统设置”->“鼠标和触摸板 ”中的“ 键入时禁用 ” 选项不起作用。这是一个古老的错误,自12.04开始,影响所有用户,无论他们使用的笔记本电脑为何

起作用的是添加片段

syndaemon -i 4 -K -d

在启动应用程序中。

“ -i 1”对我来说很有效,“-i 1”对某些人来说可能还不够。

请不要使用网络上某些示例中提供的“ -t”选项。这是导致问题的原因,因为在键盘上打字时不会禁用触摸板。

在启动过程中,syndaemon未运行,因此不需要“ killall syndaemon”。如果syndaemon已启动,则应使用:

killall syndaemon
syndaemon -i 4 -K -d

您可以尝试用一只手打字,并尝试用另一只手的手指用触摸板移动光标,以确认它对您有用。


对我不起作用
vipin8169 '16

1
  1. 取消选中“触摸板设置”中的“在输入时禁用”,如下所示(是的,这是必要的,即使看起来违反直觉,否则执行以下“永久”步骤然后重新启动后,触摸板最终将被禁用,因为先前的/错误的syndaemon将在启动时出现冲突)

    在此处输入图片说明

  2. 终止当前的syndaemon进程(如果以前在启动时启动了该进程),该进程将控制此触摸板功能:

    pkill syndaemon
    
  3. 重新启动syndaemon进程:

    syndaemon -i 2 -d -K
    

    其中:2是延迟时间,以秒为单位,您希望它在停止键入后再激活触摸板之前等待;请注意,任何小于1.5〜2秒的时间值(实际上更像是小于2秒的时间)都是毛刺/松动的,并且在键入时似乎不能完全禁用触摸板

  4. 要永久保留此修复程序,请执行以下操作:从搜索栏中运行“启动应用程序”应用程序→单击“添加”→并将以下命令键入“命令”部分:syndaemon -i 2 -d -K。名称和评论可以是任何东西。完成后单击“添加”,然后将其关闭。看起来是这样的:

    在此处输入图片说明

  5. 重新启动计算机以验证其是否正常运行。请注意,只有登录到用户帐户后,该功能才能启动。在登录屏幕期间,它尚未激活。

在此处阅读有关Ubuntu 14.04中此错误的更多信息:https : //bugs.launchpad.net/ubuntu/+source/xserver-xorg-input-synaptics/+bug/1295526

这个答案最初发布在这里:https : //askubuntu.com/a/986129/327339


-1

要为已提供的所有答案添加扩展名...

主要: syndaemon -i 1 -K -d

该命令的唯一问题是,一旦系统复位,该代码基本上将被撤消。

因此,我建议Alias即使系统重新启动,也要使用此命令来创建该命令,您只需在终端中键入命令并从提示符处自动执行代码即可。

我个人使用“ keystop”作为命令名称来实现此代码。但是,您可以使用选择的任何名称,只需按照以下步骤操作即可。(keystop用您为命令选择的任何名称代替)

**请记住,您选择的任何命令名称都不得使用!

这是您的操作方式:

  1. 开放终端
  2. 类型 alias keystop='syndaemon -i 1 -K -d'

而已!从现在开始,每当您重新启动系统时-只需打开终端并键入keystop,代码便会执行!

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.