问题描述
我想让我的触摸板在使用鼠标时被禁用。我怎样才能做到这一点? touchpad-indicator
已于11.10停止工作。它曾经在11.04工作。 Gnome3不是一个解决方案,因为我不喜欢它,并发现它的马车。
最佳解决方法
在终端中运行以下命令:
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
(并通过类似的命令启用)
次佳解决方法
-
搜索鼠标
-
点击鼠标和触摸板
-
点击触摸板设置右侧的/开启按钮。
第三种解决方法
检查这个链接:How to disable-enable touchpad in ubuntu 11.10
找到的答案真的很整齐:
sudo add-apt-repository ppa:atareao/atareao
sudo apt-get update
sudo apt-get install touchpad-indicator
在此之后,您将在通知区域中获得一个开关。
我唯一希望的是能够将开关键设置为Fn
+ F8
(这是我键盘上的触摸板按键开关…
第四种方法
基于@彭吴给出的答案,我创建了一个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 $4}'`
if [ $STATE -eq 1 ]
then
xinput disable $ID
echo "Touchpad disabled."
else
xinput enable $ID
echo "Touchpad enabled."
fi
第五种方法
简单地说,在一个终端中:
synclient TouchpadOff=1
但是,以上似乎不再适用于Ubuntu 16.04。在这种情况下,xinput
仍然有效:
xinput set-prop `xinput --list | awk '/TouchPad.*pointer/ {print $7}' | sed 's/id=\(.*\)/\1/'` "Device Enabled" 0
第六种方法
Xfce /Xubuntu解决方案
这只是本问题下this答案中的命令应用。下面的解决方案仅限于Xfce /Xubuntu,但尽管我偶然发现它,但我觉得它太优雅了,不会在这里分享。所以,我最初为Xubuntu创建了a separate question。这个问题不能不重复,因为这个原因可能会关闭,这就是为什么我敢于在这里回答re-post。
这是关于这两个命令:
禁用:
xinput set-prop 15 "Device Enabled" 0
启用:
xinput set-prop 15 "Device Enabled" 1
身份证号码将通过运行找到
xinput list
这些命令可以添加到Xfce启动器中。
美丽之处在于:
-
通过将它们添加到单个启动器中
-
设置高级属性,如下图所示
(即’显示上次使用的项目’和’inside button’),
-
并添加两个特定的图标,
启动程序将始终显示触摸板的当前状态。
第七种方法
这是如何在启动时自动禁用触摸板此方法将通过名称而不是通过id更安全地禁用键盘。以下是如何获取触控板的名称:
$ xinput list --name-only | grep -i Touchpad
ETPS/2 Elantech Touchpad
创建一个bash脚本文件。我将这个文件添加到了ubuntu的启动应用程序中,以便在每次重新启动时运行。请记住使文件可执行。这里是内容:
#!/bin/bash
$ xinput disable 'ETPS/2 Elantech Touchpad'
第八种方法
我使用以下脚本来启用/禁用触摸板。我也将它分配给键盘快捷键。
用法:toggle_touchpad.sh [on|off
]
如果你没有参数运行,那么它会简单地反转触摸板的当前状态。
#!/bin/bash
# toggle_touchpad.sh
is_off=`synclient | grep -Pio "TouchpadOff.*?(\d)" | grep -Eo "[01]"`
if [ -z "$1" ]; 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 [ "$1" == "on" ]; then
echo "Turning on touchpad"
synclient TouchpadOff=0
notify-send "Touchpad Enabled"
elif [ "$1" == "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
第九种方法
这在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)总是触摸板。
现在,如果我可以让up-arrow在nautilius上运行并查看.dirs
第十种方法
首先检查您的笔记本电脑是否启用/禁用触摸板键盘快捷键,任何机会!在我的联想Thinkpad T500上,它是Fn
+ F8