前言
本文鏈接: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坐標軸方向)
以上的
PalmMinWidth
和PalmMinZ
的數值可以通過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')
引用文章: