我希望在使用鼠标时禁用触摸板。我该怎么办?
touchpad-indicator已停止在11.10上工作。它曾经在11.04上工作。 Gnome3不是解决方案,因为我不喜欢它,发现它存在问题。

评论

好的,我认为触摸板指示器开发团队将解决此问题。

触摸板的可能重复项在Dell XPS L501x上不起作用

最简单的解决方案不是第一个答案。向下滚动到屏幕截图:-)

#1 楼

在终端中运行以下命令:

xinput list


您将获得如下所示的输出:

⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=12   [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)]
    ↳ Laptop_Integrated_Webcam_1.3M             id=10   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=11   [slave  keyboard (3)]
    ↳ Dell WMI hotkeys                          id=13   [slave  keyboard (3)]


它显示所有已连接的输入设备。请注意,它们都有一个ID。
由于12是我的触摸板的ID,因此运行以下命令将其禁用。

xinput set-prop 12 "Device Enabled" 0


在Ubuntu版本>12.04中,您也可以通过

xinput --disable 12


(并通过类似的命令启用)

评论


关闭触摸板synclient TouchpadOff = 1将其重新打开synclient TouchpadOff = 0这样可以更好。

–彭武
2011-10-17 10:40



sudo apt-get install touchpad-indicator的新功能是touchpad-indicator在11.10中可以再次使用。

–彭武
2011年11月10日23:47



“ synclient -l | less”以查看所有可用选项

– samis
13年7月16日在2:39

在12.10及更高版本中,您还可以使用xinput -disable 12禁用输入设备12(或xinput -enable 12启用它)。请参见手册第xinput(1)页。

– Lekensteyn
13年8月25日在22:55

@Lekensteyn您的意思不是--disable和--enable,每个都有两个破折号吗?那就是我对xinput --disable 11所做的

– Ehtesh Choudhury
2014年1月22日下午6:54

#2 楼


搜索鼠标
单击鼠标和触摸板
单击触摸板设置右侧的关闭/打开按钮。





评论


大的ON | OFF小部件在12.04中不可用,那是一个必须诉诸命令行的地方...

– knocte
2014年1月29日10:44

我不小心用这种方法禁用了触摸板,如何在不将鼠标连接到计算机的情况下再次启用它?

– Ziv
17年5月19日在15:26

@Ziv转到此“鼠标和触摸板”窗口,一直单击选项卡,直到打开/关闭切换器处于焦点,然后按Enter。

–paibamboo
17-10-7在9:57

这是一个很好的方法。通过命令行禁用触摸板后,触摸板将继续重新启用自身

–Hoàng Long
18年7月26日在7:14



<3! <3! <3! <3! #damnthefreakyterminal

– java.web
20-2-10在19:31



#3 楼

检查此链接:如何在ubuntu 11.10中禁用触摸板

找到的答案确实很整洁:

sudo add-apt-repository ppa:atareao/atareao
sudo apt-get update
sudo apt-get install touchpad-indicator


之后,您会发现

我唯一希望的是能够将开关键设置为Fn + F8(这是键盘上的触摸板键开关...

评论


太好了!它曾经在11.10中被破坏。但是现在可以了

–彭武
2011-11-10 23:47

在12.04中工作。

–viking
13年2月20日在20:06

在14.04中可以正常工作

–voiger
2014年9月4日在13:28

警告:这需要信任用户atareao,他可能在其PPA中托管了恶意软件

– knocte
16-10-16在10:30

在Xubuntu 16.04.1。中无法正常工作。将某些点击记录为按键,然后阻止进一步使用触摸板,尽管您单击并没有按任何键,但是另一方面,当我按动按键并继续使用触摸板在光标周围移动时,它什么也没做。某些东西一定有问题,或者在发行版或计算机上不够普及,以致引起这种行为。

–塞尔菲·卡尔斯塔尔(Zelphir Kaltstahl)
17-2-10在10:38



#4 楼

根据@Peng Wu给出的答案,我创建了一个可用于...的bash脚本...



 #!/bin/bash

declare -i ID
ID=`xinput list | grep -Eo 'TouchPad\s*id\=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}'`

xinput set-prop $ID "Device Enabled" 0

echo 'Touchpad has been disabled.'
 


您可以手动运行它,也可以在启动时运行它。然后,您可以使脚本在引导时运行。

另一个切换触摸板的bash脚本:

 #!/bin/bash

declare -i ID
ID=`xinput list | grep -Eo 'TouchPad\s*id\=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}'`
declare -i STATE
STATE=`xinput list-props $ID|grep 'Device Enabled'|awk '{print }'`
if [ $STATE -eq 1 ]
then
    xinput disable $ID
    echo "Touchpad disabled."
else
    xinput enable $ID
    echo "Touchpad enabled."
fi
  

评论


检查第一个脚本的状态码会很酷。我不得不将grep模式更改为“在鼠标仿真模式下的触摸板\ s * id \ = [0-9] {1,2}”

–加拉特
2015年9月18日在21:53



在我的系统上,它是Touchpad而不是TouchPad。要使其不区分大小写,只需在您的grep选项中添加i。

–zondo
16年11月5日,1:11

红宝石触摸板切换oneliner synclient TouchpadOff = $(synclient | ruby​​ -ne'puts($ _。match(/ \\ d + /)[0] .to_i ^ 1)如果/ TouchpadOff / =〜$ _')

– Galva
18年5月21日在8:23

对于单行等效项,请参阅我的答案

– knocte
18年11月26日在6:40

我将其设置为附加到Ctrl + Alt + P的键盘快捷键,以打开和关闭触摸板,包括2秒钟的窗口弹出窗口以指示新的触摸板状态,同时还通过imwheel解决了滚轮速度问题:askubuntu。 com / questions / 844151 / enable-disable-touchpad /...。另外,我的答案同时搜索xinput的TouchPad和Touchpad,因为有时P大写或不大写,具体取决于系统,因此如果您不同时搜索两者,则脚本可能无法正常工作。

–加百利·斯台普斯
19年9月12日在17:25

#5 楼

只是,在终端中:

synclient TouchpadOff=1


但是,以上内容似乎在Ubuntu 16.04中不再起作用。在这种情况下,xinput仍然有效:

xinput set-prop `xinput --list | awk '/[Tt]ouch[Pp]ad.*pointer/ {print }' | sed 's/id=\(.*\)//'` "Device Enabled" 0


评论


最简单的解决方案,谢谢。尽管“在输入时禁用触摸板”已打开,但仍不小心触摸了触摸板-使我有些疯狂。这样,我可以只使用USB鼠标,并保持键盘正常运转。

–大卫·托马斯(David Thomas)
2014-09-22 23:37

这需要须藤吗?它对我的HP 6460b + Ubuntu 14.04没有影响

–itsols
2015年12月23日,下午3:22

它没有,并且可以在我的14.04上使用

– knocte
2015年12月23日下午3:45

可在Ubuntu 16.04上运行,不需要sudo,可以轻松地用它创建键盘快捷键:+1 :-)

–马丁·托马
16年5月4日在16:34

xinput适用于Fedora 25,谢谢!

–阿洛瓦·马哈德(Alois Mahdal)
17年3月31日在16:42

#6 楼

更新的解决方案:

代替xinput,其id变量可以更改,最好像其他答案中那样使用synclient,就像这样。

sudo apt install xserver-xorg-input-synaptics


要关闭触摸板:

synclient TouchpadOff=1


要打开:

synclient TouchpadOff=0


与发射器或快捷方式如下所述。


这只是本问题中此答案中命令的应用。下面的解决方案仅限于Xfce / Xubuntu,但是尽管我偶然发现了它,但我发现它太优雅了,在这里不太喜欢分享。因此,我最初为Xubuntu创建了一个单独的问题。这个问题只能是这个问题的重复,并且可能由于这个原因而被关闭,这就是为什么我敢在这里重新发布该答案。


关于以下两个命令:

禁用:

xinput set-prop 15 "Device Enabled" 0


启用:

xinput set-prop 15 "Device Enabled" 1


ID号将通过运行找到

xinput list


评论


@galileopy-就我现在所知,一个简单的快捷方式甚至更有用

–user47206
18 Mar 6 '18 at 21:35

#7 楼

这是在启动时自动禁用触摸板的方法
此方法将通过名称而不是通过ID更安全地禁用触摸板。
以下是获取触摸板名​​称的方法:

$ xinput list --name-only | grep -i Touchpad
ETPS/2 Elantech Touchpad


创建一个bash脚本文件。我已将该文件添加到ubuntu启动应用程序,因此该文件可在每次重新启动时运行。记住使文件可执行。这里是内容:

#!/bin/bash
$ xinput disable 'ETPS/2 Elantech Touchpad'


评论


由于已将其放入脚本中,因此可能需要合并上面的两个命令(以实现可移植性),即使花费几分之一秒的时间xinput -disable“ $(xinput list --name-only | grep -i Touchpad)”

–Hastur
20 Mar 10 '20 at 12:10



#8 楼

这在11.10中对我有用:

⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=12   [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)]
    ↳ Laptop_Integrated_Webcam_1.3M             id=10   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=11   [slave  keyboard (3)]
    ↳ Dell WMI hotkeys                          id=13   [slave  keyboard (3)]


它显示所有已连接的输入设备。请注意,它们都有一个ID。由于12是我的触摸板的ID,因此运行以下命令将其禁用。

xinput set-prop 12 "Device Enabled" 0


,我会将其放在.bashrc或其他任何东西中,除非我不是确保设备12(实际上对我来说是11)始终是触摸板。

现在,如果我可以在nautilius中使用向上箭头来工作并查看.dirs

评论


没有触摸板实用程序不会禁用11.10中的tp,因此请返回命令行

–touristguy87
2012-4-20 17:32

运行xinput列表,获取触摸板的ID,然后运行xinput set-prop(id)“ Device Enabled” 0就像一个超级按钮

–touristguy87
2012年4月20日17:33



#9 楼

定义键盘快捷键
(此答案是从无效编辑中复制的)
您不必每次都希望启用/禁用触摸板时都记住该命令,而是可以将其添加为键盘组合快捷键。
在“快捷键”下的“首选项”下,单击“添加”。为快捷方式命名,例如“禁用触摸板”或其他名称,然后添加您在上面发现的命令
xinput set-prop <id> "Device Enabled" 0

,然后单击应用。然后添加另一个名为“启用触摸板”的快捷方式或与第一个类似的快捷方式,并在最后将先前的命令更改为1。
xinput set-prop <id> "Device Enabled" 1

分别是关闭/打开状态。
现在添加后,单击“启用触摸板”的“快捷方式”列(应该说“已禁用”),然后键入所需的键盘快捷方式,我选择了Win + 1(按住Windows键并按数字1)。对“禁用触摸板”执行相同操作,我选择了Win + 2。
现在Win + 1启用我的触摸板,而Win + 2禁用它。

#10 楼

在我的情况下,fn + F9映射到触摸板切换器中。

但是按键并不能像这样在屏幕的右上方显示触摸板图标。




这里是一种只需按下快捷键即可切换触摸板的解决方案。

1。获取触摸板的ID

$ xinput list


2。编写用于切换触摸板的脚本

所以我得到了一个bash脚本文件,用于使用'xinput'命令切换触摸板(可以在此处找到原始脚本)。

对于我来说,触摸板的ID为12。

#!/bin/bash

device=12
state=`xinput list-props "$device" | grep "Device Enabled" | grep -o "[01]$"`

if [ "$state" -eq '1' ];then
  xinput --disable "$device"
else
  xinput --enable "$device"
fi


将上面的脚本文件另存为.toggleTouchPad.sh

3。用于运行脚本的键盘快捷方式

最后一步是添加键盘快捷方式来运行脚本文件。

所以只需在快捷方式窗口的sh /PATH/TO/SCRIPT中写入Command即可。



4。尝试快捷方式

按快捷方式并检查触摸板是否已切换。

它适用于ASUS A556UA笔记本电脑和已安装Ubuntu14.04 x64的计算机。


有待改进。


将触摸板切换键分配给上述自定义快捷方式将不起作用
,它仅在触摸板右上方显示触摸板图标屏幕
,所以我不得不分配另一个键(super + F9),而不是触摸板切换键(fn + F9)。



请提出一种将触摸板切换键分配给自定义快捷方式的方法,以实现完整解决方案

#11 楼

我使用以下脚本来启用/禁用触摸板。
我也将它分配给了键盘快捷键。

用法:toggle_touchpad.sh [on|off]

如果不带参数运行,它将简单地反转触摸板的当前状态。

 #!/bin/bash
# toggle_touchpad.sh

is_off=`synclient | grep -Pio "TouchpadOff.*?(\d)" | grep -Eo "[01]"`

if [ -z "" ]; then
    echo "Inverting touchpad state"

    if [ "$is_off" -eq '0' ];then
        synclient TouchpadOff=1
        notify-send "Touchpad Disabled"
    else
        synclient TouchpadOff=0
        notify-send "Touchpad Enabled"
    fi

else

    if [ "" == "on" ]; then
        echo "Turning on touchpad"
        synclient TouchpadOff=0
        notify-send "Touchpad Enabled"
    elif [ "" == "off" ]; then
        echo "Turning off touchpad"
        synclient TouchpadOff=1
        notify-send "Touchpad Disabled"
    else
        echo "Unknown arg! Pass no args or on/off !"
    fi

fi
 


#12 楼

对于Ubuntu 16.04

禁用触摸板:

xinput --disable $(xinput --list | grep -i 'touchpad' | grep -o 'id=[0-9]*' | sed 's/id=//') 


和启用触摸板:

xinput --enable $(xinput --list | grep -i 'touchpad' | grep -o 'id=[0-9]*' | sed 's/id=//')


#13 楼

https://bitbucket.org/barseghyanartur/xinput

这是一个非常小的代码,允许您从终端禁用/启用触摸板。

只需遵循以下说明:

安装:

$ pip install xinput



$ disable-touchpad


启用触摸板:

$ enable-touchpad


评论


辉煌,可能是最简单的解决方案

– Exeleration-G
18年2月17日在21:24

#14 楼

首先,请检查您的笔记本电脑是否有启用/禁用触摸板键盘快捷键的功能!在我的Lenovo Thinkpad T500上是Fn + F8

评论


很好的解决方案!及其吻:保持超级简单。

–斯蒂夫
2014年2月5日,9:49

似乎太具体了。无法与我的n550jv一起使用。 Peng Wu的评论起到了作用。

– Louiscoquio
2014年3月3日在14:23

大多数带有触摸板的笔记本电脑都具有这样的键,但是不能保证它能正常工作。如果我使用xev或xinput并尝试使用G700上的按钮,则不会注册该死的东西。甚至evemu-record都不会注册任何东西,那是在内核级别。如果内核看不到它,那么除了修复设备驱动程序之外,就不需要做太多事情了。话虽这么说,这是一个很好的解决方案,但对于所有用例来说都不是一个可靠的解决方案。

– wxl
15年1月18日在15:38

#15 楼

只需在.bashrc中添加几个bash函数即可进行切换...

#toggle-touchpad on|off
function touchpadon  { /usr/bin/xinput --enable $(xinput --list | grep -Eo 'TouchPad\s*id\=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}') ; echo "touchpad enabled";}
function touchpadoff  { /usr/bin/xinput --disable $(xinput --list | grep -Eo 'TouchPad\s*id\=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}') ; echo "touchpad disabled";}


#16 楼

安装Jupiter应用程序。您可以禁用触摸板,它会被记住。这对于我在11.04、11.10和12.04上的Lenovo IdeaPad和ThinkPad都有效。

#17 楼

在Ubuntu中禁用触摸板实际上非常简单。只需删除在Ubuntu中使用触摸板所需的软件包xserver-xorg-input-synaptics

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

这是永久禁用触摸板的唯一方法,对我有用。其他方法只是暂时的:

xinput list
xinput set-prop IDOFTOUCHPAD "Device Enabled" 0 
synclient TouchpadOff=1 


我正在使用LXDE,但无法通过将这些行添加到带有~/.config/lxsession/LXDE/autostart/etc/xdg/lxsession/LXDE/autostart@来自动禁用触摸板-字首。它只是被忽略了。

我尝试使用dconf-editor(org.gnome.desktop.peripherals.touchpad)和gconf-editor(desktop.gnome.peripherals.TOUCHPADNAME)禁用触摸板,但两者均无法正常工作。 dconf-editor上的设置完全无效,而在gconf-editor上,则继续显示错误消息“此键没有模式”。

#18 楼

我尝试使用笔记本电脑功能键(fn)禁用指针,并且它可以工作。但是在我的11.04天内它没有工作,请尝试一下。

评论


我没有那个按钮兄弟。 HP Probook 4520s

–彭武
11-10-16在8:51

哦好的。我只是发现我发布的解决方案也不是永久的,每次重启机器时都必须这样做。

–法亚兹
11-10-18在12:19

#19 楼

如果您的笔记本电脑键盘没有打开/关闭触摸板的特殊功能键,也许您可​​以找到一个模拟它的屏幕虚拟键盘(尽管我还没有找到)。

简短其中,这很好用:

sudo apt-get install gpointing-device-settings




#20 楼

在带Dell笔记本电脑的Ubuntu 12.04 LTS上对我有用的东西

我想禁用键盘中间的指针,在键入时会产生很多问题。因此:

$ xinput list
 ⎡ Virtual core pointer                     id=2
 ⎜   ↳ Virtual core XTEST pointer               id=4
 ⎜   ↳ Wacom Graphire2 4x5 eraser               id=9
 ⎜   ↳ Wacom Graphire2 4x5 cursor               id=10
 ⎜   ↳ Wacom Graphire2 4x5                      id=11
 ⎜   ↳ AlpsPS/2 ALPS DualPoint TouchPad         id=14
 ⎜   ↳ Macintosh mouse button emulation         id=15
 ⎜   ↳ DualPoint Stick                          id=13
 ⎣ Virtual core keyboard                    id=3
     ↳ Virtual core XTEST keyboard              id=5
     ↳ Video Bus                                id=6
     ↳ Power Button                             id=7
     ↳ Sleep Button                             id=8
     ↳ AT Translated Set 2 keyboard             id=12

The device I want to disable has id 13. Use xinput to list its properties:

$ xinput -list-props 13
 Device 'DualPoint Stick':
    Device Enabled (115):   0
 [...several lines removed...]
 $ xinput -set-prop 13 115 0


这已禁用了Dualpoint摇杆。但是没有其他答案对我有用。我做了

安装dconf-tools

sudo apt-get install  dconf-tools
dconf-editor


然后去org-> gnome-> settings-daemon->外设->触摸板并取消选中启用触摸板的字段

评论


小Nob!实际上,将G H和B键之间的钥匙安装在一个小方钉上,用镊子将其拉出!这将防止您在键入时被击中-如果需要,稍后将其放回原处(因此请勿将其丢弃)尝试通过软件禁用它可能会妨碍鼠标或触摸板的功能!

– Ken Mollerup
16年4月21日在8:40

#21 楼

我找到了创建可调用以下命令的键绑定的好方法:

xdotool key 199


其中199是被识别为XF86TouchpadToggle的键码。这样一来,用户就可以将自己选择的按键组合起来,使其表现得像一个特殊按键,有些笔记本电脑必须在诸如Mate或Cinnamon之类的桌面环境下很好地切换触摸板。您可以通过以下命令检查键码:

xmodmap -pke


我已经在我的博客上创建了操作方法:https://artofcode.wordpress.com/2017/10/ 01 /如何在Linux下添加键绑定以切换触摸板/

#22 楼

因此,通过结合Krzysztof Tomaszewski和JaeJun LEE的答案,我得出了这个解决方案。

创建以下toggleTouchPad.sh脚本并将其保存在任意位置:

#!/bin/bash
device=14
state=`xinput list-props "$device" | grep "Device Enabled" | grep -o "[01]$"`
if [ "$state" -eq '1' ];then
  xinput --disable "$device" && sleep 1 && xdotool key 201
else
  xinput --enable "$device" && sleep 1 && xdotool key 200
fi


其中14是您的TouchDevice ID(请参阅JaeJun LEE的回答)


转到Ubuntu设置->设备->键盘
在列表的最后,单击+添加新的自定义快捷方式
将其命名为Toggle Touchpad,使用Command /path/to/.toggleTouchPad.sh和您想要的任何按键组合(我刚刚选择了Super + F7)。

现在,每当您按下所选的按键组合时,它不仅会切换触摸板,而且还会显示xdotool
提供了一个通知图标

评论


只是一些笔记。在Kubuntu 18.04LTS上,默认情况下未安装xdotool。您可以使用“通知发送触摸板已禁用”或“启用”来代替。您可能会发现添加一行以自动检测设备编号(14)而不是对其进行硬编码是有用的,只是为了延长脚本的使用寿命,例如(device = $(xinput --list | grep -i'触摸板'| grep -o'id = [0-9] *'| sed's / id = //'))

–Hastur
20 Mar 10 '20 at 12:01



#23 楼

我的解决方案是以下tp脚本:

#!/bin/bash
TT=`xinput --list | grep -i touchpad | sed -e "
s/(// 
s/)//
s/ //g
"`
set $TT

((  ))

xinput list | grep -iq mouse &&{
   xinput --disable $id
}||{
   xinput --enable $id
}


如果检测到鼠标,则禁用触摸板,否则请启用。
脚本。

#24 楼

适用于所有触摸板的替代解决方案,无需ID。

打开终端并输入“ gedit toggle_touchpad.sh”

#!/bin/bash
condition="$(gsettings get org.gnome.settings-daemon.peripherals.touchpad touchpad-enabled)"

if [ "$condition" == "false" ]; then
     gsettings set org.gnome.settings-daemon.peripherals.touchpad touchpad-enabled true
elif [ "$condition" == "true" ]; then
    gsettings set org.gnome.settings-daemon.peripherals.touchpad touchpad-enabled false
fi


保存文件并退出。现在,您有了一个名为“ toggle_touchpad.sh”的文件。

运行命令chmod +x toggle_touchpad.sh使该文件可执行。

将文件放在您喜欢的任何文件夹中。让我们假设您将其放在文件夹/ home / username / myscripts /中。

从右上角的菜单转到system-settings->keyboard->shortcuts->custom-shortcuts

创建一个新的快捷方式,并根据需要输入名称。输入命令/home<username>;/myscripts/toggle_touchpad.sh,其中“用户名”是您的用户名

分配所需的任何键盘快捷键。

就绪:)

PS。我个人将文件放在/opt/myscripts/文件夹中,但是为了放置在文件中,您应该在创建文件后运行以下命令:

sudo mkdir /opt/myscripts/

sudo mv toggle_touchpad.sh /opt/myscripts/

sudo chown <username>:<username> /opt/myscripts/toggle_touchpad.sh

chmod +x  /opt/myscripts/toggle_touchpad.sh


其中“用户名”是您的用户名

然后创建快捷方式时,将使用路径“ /opt/myscripts/toggle_touchpad.sh”,而不是上面提到的路径

#25 楼

这种方法有效,但是我似乎无法使用“赢”按钮。因此,我使用了CtrlF1和F2。

当前我的笔记本电脑操作系统是ubuntu 14.04LTS。

哦,需要使用以下命令找出xinput < id >。对于Ubuntu 14.04,它是“ SynPS / 2 Synaptics触摸板”

xinput list
SynPS/2 Synaptics TouchPad                  id=###


#26 楼

我在这里尝试了所有先前的答案,但均未成功。
在Ubuntu 16.10上对我有用的是

killall syndaemon 
syndaemon -i 1 -KRd


您可能希望将值1更改为0.5。

#27 楼

要禁用我的纬度中间杆,请将其放在Ubuntu的.profile上,以便每次启动/重新启动笔记本电脑时都将禁用该输入。

我使用了--id-only来避免grep不匹配

declare -i ID
ID=`xinput list --id-only 'AlpsPS/2 ALPS DualPoint Stick' | grep -Eo '[0-9]{1,2$
declare -i STATE
STATE=`xinput list-props $ID|grep 'Device Enabled'|awk '{print }'`
if [ $STATE -eq 1 ]
then
    echo "id" $ID
    xinput disable $ID
    echo "Touchpad disabled."
else
    echo "id" $ID
    xinput enable $ID
    echo "Touchpad enabled."
fi


#28 楼

替代方法:使用awkxbindkeys(自动检测)

首先请在您的touchpad_toggle目录中添加~/bin脚本:

#!/bin/bash
tpad_device=`xinput list | grep Touchpad | awk '{print }' | sed -e 's/id=//'`
tpad_enable=`xinput --list-props $tpad_device | grep 'Device Enable' | awk '{print }'`

if [ "$tpad_enable" == "1" ]; then
  xinput --disable $tpad_device
elif [ "$tpad_enable" == "0" ]; then
  xinput --enable $tpad_device
else
  echo "!WARNNING touchpad device not found!"
fi


在您的~/.xbindkeysrc中添加:

#touchpad_toggle
"touchpad_toggle"
    m:0x0 + c:199
    XF86TouchpadToggle 


#29 楼

我之前在另一个问题上创建了一个脚本:https://askubuntu.com/a/874865/433961
它可以找到并切换TouchPad设备。您可以在系统设置中为其配置自定义快捷方式。
 #!/bin/bash

read TPdevice <<< $( xinput | sed -nre '/TouchPad|Touchpad/s/.*id=([0-9]*).*//p' )
state=$( xinput list-props "$TPdevice" | grep "Device Enabled" | grep -o "[01]$" )

if [ "$state" -eq '1' ];then
    xinput --disable "$TPdevice" && notify-send -i emblem-nowrite "Touchpad" "Disabled"
else
    xinput --enable "$TPdevice" && notify-send -i input-touchpad "Touchpad" "Enabled"
fi
 

我将Ctrl + Shift + F9设置为切换触摸板启用和禁用,如下所示:

更新:您可能需要使用命令chmod + x filename或在自定义快捷方式窗口的Command字段中输入/ bin / bash / filepath来使脚本可执行。 />