前言

本文链接:https://www.cnblogs.com/hellxz/p/linux_touchpad_settings.html

这时简单记录一下最近两天折腾Lxde的触摸板功能的设置,留待日后查阅

本文主要记录一下APT系Linux开启Lxde触摸板双击功能,以及一些关于触摸板防误触方面的设置

PS: Arch Linux可以直接参考官方wiki

解决Lxde没有双击功能

安装驱动包

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

复制 /usr/share/X11/xorg.conf.d/etc/X11

sudo cp -R /usr/share/X11/xorg.conf.d /etc/X11/.
cd /etc/X11/xorg.conf.d
sudo vim 10-edev.conf #添加edev.conf配置文件,添加自定义配置

新建/usr/share/X11/xorg.conf.d/10-edev.conf

sudo vim /usr/share/X11/xorg.conf.d/10-edev.conf #添加edev.conf配置文件,添加自定义配置

文件内容如下:

# To overwrite 70-synaptics.conf default configuration.
# The Options are useful for diy
Section "InputClass"
Identifier "evdev touchpad catchall"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
Driver "synaptics"
Option "TapButton1" "1"
Option "TapButton2" "2"
Option "TapButton3" "3"
EndSection # if touchpad has duplicates, will ignore operation what you have done with touchpad.
Section "InputClass"
Identifier "touchpad ignore duplicates"
MatchIsTouchpad "on"
MatchOS "Linux"
MatchDevicePath "/dev/input/mouse*"
Option "Ignore" "on"
EndSection

这里开启单击、双击、三指的操作功能,如果不想再使用某一功能,可以设置其值为0或移除此Option

重启系统

重启系统后,我们会发现双指操作可以正常使用了,但是我发现打字的时候,大拇指会碰到掌托,鼠标乱跑,基本没法正常打字,这样也是不合需要的。所有有了下边的打字等场景禁用触摸板的记录

打字时禁用触摸板

这里有三种方案,其一是开启手掌探测,其二是打字时禁用触摸板,其三是直接禁用触摸板(提供切换脚本)

查看当前触摸板设置可以参考synclient -l

开启手掌探测(Palm Detect)

以下为测试数据,可以使用如下参数在本次会话中测试,如果一切正常且满足需要,可以添加到自启脚本中

synclient PalmDetect=1 #开启手掌探测
synclient PalmMinWidth=8 # 手掌最小宽度
synclient PalmMinZ=100 #手掌用力最小力度(z坐标轴方向)

以上的PalmMinWidthPalmMinZ的数值可以通过evtest软件进行测试,使用方法如下图

最后我们得到的参数,也可以添加到/usr/share/X11/xorg.conf.d/10-edev.conf中,接续在Option下方

例如刚才的配置应写为:

Option "PalmDetect" "1"
Option "PalmMinWidth" "8"
Option "PalmMinZ" "100"

打字时禁用触摸板

syndaemon -i 2 -d  #2s是暂停时间,更多详情参考syndaemon -h

可以添加到自启(auto_start)中,禁用时间可以按需调整,如果不写-m指定毫秒数默认200ms,-i指定秒数,默认2s

禁用触摸板

实现思路是通过脚本去切换当前禁用触摸板的状态

创建shell脚本

sudo vim /usr/local/bin/touchpad_toggle.sh

内容如下:

#!/bin/bash

ts=`synclient -l|grep TouchpadOff`
ts=${ts#*= } if [ "$ts" == 0 ]; then
synclient TouchpadOff=1
else
synclient TouchpadOff=0
fi

当然脚本还可以简写为:

#!/bin/bash
synclient TouchpadOff=$(synclient -l | grep -c 'TouchpadOff.*=.*0')

引用文章:

Arch Linux Wiki

Ubuntu Wiki

Linux公社

Lxde添加触摸板双击功能、防误触的更多相关文章

  1. Budgie Desktop in Linux 无法使用触摸板右键功能

    问题描述 Budgie桌面在Linux环境下很好用,不过最近发现触摸板的右键功能是不可用的 解决方法 经查阅Gnome官方文档(Budgie有很多功能基于Gnome)发现是Gnome官方把这个功能去掉 ...

  2. Web开发从零单排之二:在自制电子请帖中添加留言板功能,SAE+PHP+MySql

    在上一篇博客中介绍怎样在SAE平台搭建一个html5的电子请帖网站,收到很多反馈,也有很多人送上婚礼的祝福,十分感谢! web开发从零学起,记录自己学习过程,各种前端大神们可以绕道不要围观啦 大婚将至 ...

  3. Win8交互UX——触摸板交互

    针对触摸输入优化 Window 应用商店应用设计,并在默认情况下获得触摸板支持. 设计用户可以通过触摸板交互的 Windows 应用商店应用. 触摸板结合间接的多点触控输入和指针设备(如鼠标)的精确输 ...

  4. 利用反馈字段给帝国cms添加留言板功能(图文教程)

    帝国cms的插件中提供信息反馈字段,很多人却不会用.这里谢寒教大家如何来给自己的帝国cms网站添加留言板功能 1.找到添加地址 2.添加字段 3.你可以在字段中添加多种字段类型(有文本域,单行文本框, ...

  5. 更新ubuntu15.10后触摸板点击功能消失

    问题描述: 昨天升级了ubuntu15.10,升级之后很多15.04让人不爽的东西消失了,大快人心,但是突然发现自己的触摸板不怎么好用了,原来可以点击,双指点击代表右键,三指点击代表鼠标中键的功能不见 ...

  6. mac安装win10后触摸板没有右键功能键的添加技巧

    一些mac用户也会在自己的笔记本电脑上安装windows10系统. 但最近有部分用户发现,安装上win10正式版后,发现无论点击触摸板哪个位置,都只有左键,根本无法右键的问题, 针对此问题,现笔者分享 ...

  7. 【Firefox浏览器】关闭触摸板双指滑动进行前进后退的功能

    痛点 本以为只是Chrome浏览器存在这一奇葩功能,没成想Firefox也沦陷了!有好一阵子在使用Firefox的时候,并未发现其存在这个功能.直到有一天,打开自己的博客,翻阅上篇< [Chro ...

  8. 联想电脑Fn+F6禁用触摸板功能不管用

    我的原因是电脑没有安装触摸板驱动,解决方法:去联想官网根据自己的主机编号下载适合自己的触摸板驱动,安装重启即可解决

  9. win10连接外接鼠标怎么禁用触摸板

    Win10笔记本如何禁用触摸板呢?Win10笔记本如何设置“插入鼠标自动禁止触摸板功能”呢?虽然笔记本触摸板在一定程度上可以方便我们的 操作,但是在以鼠标和键盘做为重要的输入设备的情况下,笔记本触摸板 ...

随机推荐

  1. docker进阶1-命令补充和容器卷使用

    命令补充 docker信息与帮助 docker version 和 docker info docker --help 查看所有docker命令列表 docker --help run/commit/ ...

  2. Kth Minimum Clique_2019牛客暑期多校训练营(第二场)

    题目连接: https://ac.nowcoder.com/acm/contest/882/D Description Given a vertex-weighted graph with N ver ...

  3. HDU 1173 采矿

    采矿 题解:如果给你一条线段(左右端点设为A,B), 那么在这条线上的任意一点到A B距离之和是一个定值, 然后如果再这条线段内在任意确定一个定点C, 那么这条线段上再任意取一个点,这个点到 A B ...

  4. Allure-pytest功能特性介绍

    前言 Allure框架是一个灵活的轻量级多语言测试报告工具,它不仅以web的方式展示了简介的测试结果,而且允许参与开发过程的每个人从日常执行的测试中最大限度的提取有用信息从dev/qa的角度来看,Al ...

  5. python实现去掉空行

    # coding = utf-8def clearBlankLine(): file1 = open('text1.txt', 'r', encoding='utf-8') # 要去掉空行的文件 fi ...

  6. DB-Lib error message 20002, severity 9

    完整报错内容:20002, b'DB-Lib error message 20002, severity 9:\nAdaptive Server connection failed (I0.185.4 ...

  7. FastJson格式化Request对象导致的一次异常思考

    一.问题描述: 近期,在环境中出现一个阻塞性的异常“nested exception is java.lang.IllegalStateException: It is illegal to call ...

  8. Centos7 C++ 安装使用googletest单元测试

    废话不多说,直接开始吧. 环境说明 系统环境:centos7.0 g++ 版本: g++ (GCC) 4.8.5 20150623 (Red Hat 4.8.5-36) 查看方法: g++ -vers ...

  9. Net基础篇_学习笔记_第十天_方法_方法的调用问题

    在Main()函数中,调用Test()函数,我们管Main()函数称之为调用者,管Test()函数称之为被调用者.如果被调用者想要得到调用者的值:1).传递参数.2).使用静态字段来模拟全局变量.如果 ...

  10. jvm内存溢出问题的定位方法

    jvm内存溢出问题的定位方法 今天给大家带来JVM体验之内存溢出问题的定位方法. 废话不多说直接开始: 一.Java堆溢出 测试代码如下: import java.util.*; public cla ...