编辑:我point 1
现在可以实现。不过,仍然需要一个解决方案point 2
。
我很难配置我的笔记本电脑的触摸板。
触摸板已能正常工作。它可成功响应单指点击、双指点击和双指垂直滚动。
我想要实现的目标:
- 将双指点击操作从鼠标右键单击更改为鼠标中键单击
- 添加三指点击功能以实现鼠标右键单击操作(我已经检查过我的笔记本电脑的触摸板是否支持三指点击,因为它可以在 Windows 上运行)
我在论坛上看到使用这作为指导。
我已经成功完成了point 1
。synclient TapButton2=2
但是,每次登录时我都必须这样做。我尝试过输入该命令,/etc/rc.local
但计算机总是以默认配置启动和登录。
关于point 2
,我已经尝试过synclient TapButton3=3
,但是当我用三根手指点击触摸板时它没有任何反应。
我在华硕 N82JV 上运行 Ubuntu 11.10。
/etc/X11/xorg.conf
:
nuno@mozart:~$ cat /etc/X11/xorg.conf Section "InputClass"
Identifier "touchpad catchall"
Driver "synaptics"
MatchIsTouchpad "on" MatchDevicePath "/dev/input/event*" Option "TapButton1" "1" Option "TapButton2" "2" Option "TapButton3" "3" EndSection
/usr/share/X11/xorg.conf.d/50-synaptics.conf
:
nuno@mozart:~$ cat /usr/share/X11/xorg.conf.d/50-synaptics.conf
# Example xorg.conf.d snippet that assigns the touchpad driver
# to all touchpads. See xorg.conf.d(5) for more information on
# InputClass.
# DO NOT EDIT THIS FILE, your distribution will likely overwrite
# it when updating. Copy (and rename) this file into
# /etc/X11/xorg.conf.d first.
# Additional options may be added in the form of
# Option "OptionName" "value"
#
Section "InputClass"
Identifier "touchpad catchall"
Driver "synaptics"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
Option "TapButton1" "1"
Option "TapButton2" "2"
Option "TapButton3" "3"
EndSection
xinput list
:
nuno@mozart:~$ xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Microsoft Microsoft® Nano Transceiver v2.0 id=12 [slave pointer (2)]
⎜ ↳ Microsoft Microsoft® Nano Transceiver v2.0 id=13 [slave pointer (2)]
⎜ ↳ ETPS/2 Elantech Touchpad id=16 [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)]
↳ Video Bus id=8 [slave keyboard (3)]
↳ Sleep Button id=9 [slave keyboard (3)]
↳ USB2.0 2.0M UVC WebCam id=10 [slave keyboard (3)]
↳ Microsoft Microsoft® Nano Transceiver v2.0 id=11 [slave keyboard (3)]
↳ Asus Laptop extra buttons id=14 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=15 [slave keyboard (3)]
答案1
即使您处于冬眠或睡眠状态,这似乎也有效(对于第 1 部分)。
echo synclient TapButton2=2 TapButton3=3 >> ~/touchpad_settings.sh
chmod +x ~/touchpad_settings.sh
gsettings set org.gnome.settings-daemon.peripherals.input-devices hotplug-command "/home/YOUR USER NAME/touchpad_settings.sh"
确保将“您的用户名”替换为您的实际用户名。此内容摘自http://tombuntu.com/index.php/2011/11/06/persistent-touchpad-configuration-in-ubuntu-11-10/
答案2
要设置中间按钮的两指点击,您可以执行以下操作。
打开启动应用程序
并添加一个新程序;
命名它,在命令行中输入以下命令:
xterm -e synclient “synclient TapButton2=2”
并保存。
对于三指点击;你确定你的触摸板支持多指动作吗?例如,我的触摸板只模拟两指动作,到目前为止我还没有找到模拟三指的方法
答案3
你使用的是 Unity 吗?因为在我的上网本上,三指手势在 Gnome Shell 中有效,但在 Unity 中无效。因为我想在 Unity 中使用这种手势,所以我查看了它的源代码,发现是 Unity 本身阻止了三指手势。但事实证明,这是可以修复的。我在帖子中发布了有关如何操作的详细说明如何在 Unity 中禁用任意默认多点触控手势?。
经过这些更改,我立即可以使用三指点击,并且会自动将其分配给中键单击,而无需启动程序。好吧,这与您要寻找的中键单击和右键单击映射相反,但您似乎已经收集了足够的信息来处理切换。
不过,你可能会对一个名为touchegg
重新映射您的触摸。它允许您执行比 更多的操作synconf
,例如为不同的程序定义不同的自定义触摸板手势,例如用 3 根手指向左或向右拖动以在浏览器的历史记录中后退或前进。这是使用我首先修补 Unity 的那个程序。而且配置非常简单。您可以通过键入来安装它
sudo apt-get install touchegg
查看网站上的演示视频。
unity
最后要说的是,如果 Unity 适合您(就像我一样),那么这就是您无法使用三指手势的原因,那么在更新时,您可能别无选择,只能重新修补并重新编译包。