1· 安裝 Synaptics 驅動,默認安裝的。php
2· 對文件進行配置 /usr/share/X11/xorg.conf.d/50-synaptics.confhtml
Section "InputClass"
Identifier "touchpad catchall"
Driver "synaptics"
MatchIsTouchpad "on"
Option "TapButton1" "1" #單指敲擊產生左鍵事件
Option "TapButton2" "2" #雙指敲擊產生中鍵事件
Option "TapButton3" "3" #三指敲擊產生右鍵事件
Option "VertEdgeScroll" "on" #滾動操做:橫向、縱向、環形
Option "VertTwoFingerScroll" "on"
Option "HorizEdgeScroll" "on"
Option "HorizTwoFingerScroll" "on"
Option "CircularScrolling" "on"
Option "CircScrollTrigger" "2"
Option "EmulateTwoFingerMinZ" "40" #精確度
Option "EmulateTwoFingerMinW" "8"
Option "CoastingSpeed" "20" #觸發快速滾動的滾動速度
Option "PalmDetect" "1" #避免手掌觸發觸摸板
Option "PalmMinWidth" "3" #認定爲手掌的最小寬度
Option "PalmMinZ" "200" #認定爲手掌的最小壓力值
EndSectionlinux
保存後就能夠了。bash
下面是arch觸摸板配置ide
軟件安裝
安裝 Synaptics 驅動
# arch linux:
pacman -S xf86-input-synaptics
管理工具
# xf86-input-synaptics 自帶了命令行管理工具:Synclient
# 圖形管理工具:GPointing Device Settings
yaourt -S gpointing-device-settings
# KDE 觸摸板控制模塊
yaourt -S kcm_touchpad
環境配置
通常的設置工做可經過圖形管理工具完成,如單擊、雙擊、右鍵的識別,橫向和縱向滾動、雙指滾動。下面介紹一些高級配置。
基本觸摸板配置
可經過修改 synaptics 的配置文件,修改觸摸板配置。包括多指敲擊、滾動、避免手掌觸摸、精確度與快速滾動。
#file: /etc/X11/xorg.conf.d/50-synaptics.conf
Section "InputClass"
Identifier "touchpad catchall"
Driver "synaptics"
MatchIsTouchpad "on"
Option "TapButton1" "1" #單指敲擊產生左鍵事件
Option "TapButton2" "2" #雙指敲擊產生中鍵事件
Option "TapButton3" "3" #三指敲擊產生右鍵事件
Option "VertEdgeScroll" "on" #滾動操做:橫向、縱向、環形
Option "VertTwoFingerScroll" "on"
Option "HorizEdgeScroll" "on"
Option "HorizTwoFingerScroll" "on"
Option "CircularScrolling" "on"
Option "CircScrollTrigger" "2"
Option "EmulateTwoFingerMinZ" "40" #精確度
Option "EmulateTwoFingerMinW" "8"
Option "CoastingSpeed" "20" #觸發快速滾動的滾動速度
Option "PalmDetect" "1" #避免手掌觸發觸摸板
Option "PalmMinWidth" "3" #認定爲手掌的最小寬度
Option "PalmMinZ" "200" #認定爲手掌的最小壓力值
EndSection
經過 man synaptics 瞭解更多信息。
注意:同時安裝 kcm_synaptics 會覆蓋掉該配置信息。
輸入時禁止觸摸板敲擊
這樣能夠避免焦點變化,影響當前的輸入。
對於使用 startx 來啓動的桌面系統,能夠修改其 .xinitrc 初始化配置文件來完成:
syndaemon -t -k -i 2 -d &
其中的 -i 2 表示兩秒空閒,即鍵盤事件後的兩秒內不容許響應觸摸板 Tap。更多信息請參照手冊頁:
man syndaemon
外接鼠標時禁用觸摸板
在 arch linux 中,使用 udev 監測硬件的熱拔插,經過修改其規則文件,來響應外接鼠標事件,從而禁用和啓用觸摸板。以下的規則文件,調用了 synclient。
#file: /etc/udev/rules.d/01-touchpad.rules
ACTION=="add", SUBSYSTEM=="input", KERNEL=="mouse[0-9]", ENV{DISPLAY}=":0.0", ENV{XAUTHORITY}="/home/harttle/.Xauthority", ENV{ID_CLASS}="mouse", RUN+="/usr/bin/synclient TouchpadOff=1"
ACTION=="remove", SUBSYSTEM=="input", KERNEL=="mouse[0-9]", ENV{DISPLAY}=":0.0", ENV{XAUTHORITY}="/home/harttle/.Xauthority", ENV{ID_CLASS}="mouse", RUN+="/usr/bin/synclient TouchpadOff=0"
注意:該文件中每一個操做必須單獨一行,能夠使用 \ 來折行;SUBSYSTEM 與 KERNEL 指定了設備 /dev/input/mouse[0-9](archwiki的中文頁面中此處有誤,我會找時間去修改)。瞭解更多 udev rules 語法:https://wiki.archlinux.org/index.php/Udev
開機時鼠標檢測
PS/2 鼠標在開機時不會觸發 udev 規則。咱們作一個桌面環境的啓動腳本,在 .xinitrc,profile 中調用,或者放在 KDE 的 Autostart 中:
#!/bin/bash
ids=`ls /dev/input/by-id | grep -E '.*-mouse'`
[ "$ids" ] && synclient TouchpadOff=1
觸摸板識別錯誤
對於某些型號的機器,Arch 下觸摸板識別會有問題(內核bug),官方建議從 AUR 安裝 psmouse-alps-driver。 受影響的機器有:
Acer Aspire 7750G
Dell Latitude E6230, E6520, E6430 and E6530 (ALPS DualPoint TouchPad), Inspiron N5110 (ALPS GlidePoint), Inspiron 14R Turbo SE7420/SE7520 (ALPS GlidePoint)
Samsung NC110/NF210/QX310/QX410/QX510/SF310/SF410/SF510/RF410/RF510/RF710/RV515
若是問題尚未解決,能夠手動編譯該模塊載入內核。
卸載原有 Alps 觸摸板驅動
pacman -R psmouse-alps-driver
從這裏下載:http://www.dahetral.com/public-download
解壓縮,並拷貝至 /usr/src
tar -xvf alps-xxx.tar
sudo cp -r usr /
加入編譯樹,並進行編譯
sudo dkms add psmouse/alps-xxx
sudo dkms autoinstall
卸載原有模塊並載入新的內核模塊
sudo rmmod psmouse || sudo modprobe psmouse
本文地址:http://harttle.com/2013/10/27/synaptics-settings-linux.html
工具