我可以禁用触摸板,但是如果我远离蓝牙鼠标,或者忘记了备用鼠标的无线加密狗,那么我就是SOL。Linux Mint有一个不错的设置,允许在使用鼠标时禁用触摸板。我现在在Ubuntu MATE 16.04上,没有该设置。我如何获得该功能?键入时关闭触摸板选项不足以防止我的手掌轻触到我正在处理的东西。
我在这里阅读了其他类似的问题,但无法找到此确切问题的答案。
我可以禁用触摸板,但是如果我远离蓝牙鼠标,或者忘记了备用鼠标的无线加密狗,那么我就是SOL。Linux Mint有一个不错的设置,允许在使用鼠标时禁用触摸板。我现在在Ubuntu MATE 16.04上,没有该设置。我如何获得该功能?键入时关闭触摸板选项不足以防止我的手掌轻触到我正在处理的东西。
我在这里阅读了其他类似的问题,但无法找到此确切问题的答案。
Answers:
如果连接了外部鼠标,则应该能够通过以下命令禁用触摸板:
gsettings set org.gnome.desktop.peripherals.touchpad send-events disabled-on-external-mouse
要了解当前情况:
gsettings get org.gnome.desktop.peripherals.touchpad send-events
选项有:
enabled
disabled
disabled-on-external-mouse
还有一个程序引入了一些GUI来编辑一些这样的设置。
sudo add-apt-repository ppa:atareao/atareao
sudo apt update
sudo apt install touchpad-indicator
阅读位于https://itsfoss.com/disable-touchpad-when-mouse-used/的更详细的指令集。
如果害怕终端,可以使用dconf-editor
:
dconf-enable-touchpad-image
在Kubuntu 16.04上,您可以转到“系统设置”->“输入设备”->“触摸板”->“启用/禁用触摸板”
现在,在插入鼠标时选择禁用。
我意识到我参加聚会有点晚了(而且我的回答并不特定于ubuntu-mate),但是这里...
我对您的要求非常相似,但是我在debian 9(拉伸)上运行xfce,所以没有安装gnome / gsettings。要在每次插入/拔下USB鼠标时禁用/重新启用突触触摸板,我使用udev规则来触发一个(posix)shell脚本,该脚本解除/重新绑定突触触摸板驱动程序:
以root用户身份,使用以下内容创建/usr/local/sbin/touchpadctl.sh:
#!/bin/sh
set -o errexit #(equivalent -e)
set -o nounset #(equivalent -u)
usage(){
echo "Usage: ${0} {-enable|-e|-disable|-d}"
}
if [ $# -ne 1 ]; then
usage
exit 1
fi
base_dir=/sys/bus/serio/drivers/psmouse
device_id=serio1
if [ ${1} = "-disable" -o ${1} = "-d" ]; then
logger "${0} is disabling the touchpad"
echo -n manual > $base_dir/bind_mode
echo -n $device_id > $base_dir/unbind 2>/dev/null || true
elif [ ${1} = "-enable" -o ${1} = "-e" ]; then
logger "${0} is enabling the touchpad"
echo -n auto > $base_dir/bind_mode
else
usage
exit 1
fi
使您的触摸板控制脚本可执行:
sudo chmod +x /usr/local/sbin/touchpadctl.sh
现在测试您的脚本。禁用触摸板:
sudo /usr/local/sbin/touchpadctl.sh -d
并启用触摸板:
sudo /usr/local/sbin/touchpadctl.sh -e
因为它使用“驱动程序解除绑定”,所以对X / xorg / wayland / gnome 完全没有依赖性。因此,您可以在udev规则中使用它,该规则将在启动期间正常运行:
以root用户身份创建/etc/udev/rules.d/01-touchpad.rules,其中包含以下内容:
KERNEL=="mouse*", ATTRS{phys}=="usb*", ACTION=="add", \
RUN+="/usr/local/sbin/touchpadctl.sh -disable"
KERNEL=="mouse*", ATTRS{phys}=="usb*", ACTION=="remove", \
RUN+="/usr/local/sbin/touchpadctl.sh -enable"
与linux一样,您的工作量可能会有所不同-您可能需要对其进行“调整”,但是我已经尽力使它易于理解。有关驱动程序绑定/解除绑定的更多信息,请阅读Linux每周新闻中Greg Kroah-Hartman在2005年发表的文章,并且在内核源代码中也有一些不错的信息。有关重写udev规则的更多信息,请参阅Daniel Drake的出色教程。