Ubuntu 如何得出默认的 synaptics 设置?我在 Eeepc 900 上安装了 Ubuntu Netbook 10.10。出厂时 TapButton2 设置为 3,TapButton3 设置为 2。
我有几个自定义的 synaptics 设置,我想将它们作为系统默认设置。现在我使用一个带有 synclient 命令的脚本,每次启动或唤醒时都必须运行它。真糟糕。以前所有东西都放在 xorg.conf 中……现在它不再存在了。我正在尝试学习新方法,显然是 conf 文件/usr/share/X11/xorg.conf.d
。
我编辑后
/usr/share/X11/xorg.conf.d/50-synaptics.conf
的样子如下:“输入类”部分 标识符“触摸板万能钥匙” 驱动程序“synaptics” MatchIsTouchpad“开启” MatchDevicePath“/dev/input/event*” 选项“LockedDrags”“1” 选项“TapButton2”“2” 选项“TapButton3”“3” 结束部分
我尝试修改触摸板部分
/usr/share/X11/xorg.conf.d/10-evdev.conf
,但没有成功。在一个部分中尝试了相同的 50-synaptics.conf 和 10-evdev.conf 文件
/etc/X11/xorg.conf.d
。/etc/X11/xorg.conf
尝试使用上面的 InputClass 部分进行制作。没有成功。
我总是先撤销旧的更改,再进行新的更改,然后启动一个新的 X 会话来测试(startx -- :2
)。我觉得有趣的东西切换到虚拟终端 ( ctrl++ ) 后alt,F1我的 synaptics 设置会丢失。严重吗?我不知道。
这些是我运行的 synclient 命令:
jake@clyde:~$ cat bin/synset.sh /bin/bash #!/bin/bash synclient TapButton2=2 synclient TapButton3=3 synclient LockedDrags=1
/dev/input 中的内容如下:
jake@clyde:/dev/input$ ls
by-path/ event0 event1 event2 event3 event4 event5 event6 event7 mice mouse0
jake@clyde:/dev/input$ ls -l by-path/
total 0
lrwxrwxrwx 1 root root 9 2011-02-18 15:43 platform-eeepc-event -> ../event6
lrwxrwxrwx 1 root root 9 2011-02-18 15:43 platform-i8042-serio-0-event-kbd -> ../event4
lrwxrwxrwx 1 root root 9 2011-02-18 15:43 platform-i8042-serio-1-event-mouse -> ../event7
lrwxrwxrwx 1 root root 9 2011-02-18 15:43 platform-i8042-serio-1-mouse -> ../mouse0
X 日志相当长,但这里有一些输出。如果整个日志有用,那么上传它的最佳位置在哪里?
jake@clyde:/var/log$ egrep "synaptics|touchpad" Xorg.0.log
[ 16.707] (II) config/udev: Adding input device ETPS/2 Elantech Touchpad (/dev/input/event7)
[ 16.707] (**) ETPS/2 Elantech Touchpad: Applying InputClass "evdev touchpad catchall"
[ 16.707] (**) ETPS/2 Elantech Touchpad: Applying InputClass "touchpad catchall"
[ 16.707] (II) LoadModule: "synaptics"
[ 16.707] (II) Loading /usr/lib/xorg/modules/input/synaptics_drv.so
[ 16.707] (II) Module synaptics: vendor="X.Org Foundation"
[ 16.708] (II) Synaptics touchpad driver version 1.2.2
[ 16.708] (II) ETPS/2 Elantech Touchpad: x-axis range 8 - 1144
[ 16.708] (II) ETPS/2 Elantech Touchpad: y-axis range 8 - 760
[ 16.708] (II) ETPS/2 Elantech Touchpad: device does not report pressure, will use touch data.
[ 16.708] (II) ETPS/2 Elantech Touchpad: finger width range 0 - 0
[ 16.708] (II) ETPS/2 Elantech Touchpad: buttons: left right double triple
[ 16.708] (--) ETPS/2 Elantech Touchpad: touchpad found
[ 16.708] (**) ETPS/2 Elantech Touchpad: always reports core events
[ 16.708] (II) XINPUT: Adding extended input device "ETPS/2 Elantech Touchpad" (type: TOUCHPAD)
[ 16.708] (**) ETPS/2 Elantech Touchpad: (accel) keeping acceleration scheme 1
[ 16.709] (**) ETPS/2 Elantech Touchpad: (accel) acceleration profile 0
[ 16.709] (**) ETPS/2 Elantech Touchpad: (accel) acceleration factor: 2.000
[ 16.709] (**) ETPS/2 Elantech Touchpad: (accel) acceleration threshold: 4
[ 16.709] (--) ETPS/2 Elantech Touchpad: touchpad found
[ 16.710] (II) config/udev: Adding input device ETPS/2 Elantech Touchpad (/dev/input/mouse0)
[ 15516.377] (--) ETPS/2 Elantech Touchpad: touchpad found
[ 44215.009] (--) ETPS/2 Elantech Touchpad: touchpad found
[ 44358.733] (--) ETPS/2 Elantech Touchpad: touchpad found
[ 44414.761] (--) ETPS/2 Elantech Touchpad: touchpad found
[ 44515.817] (--) ETPS/2 Elantech Touchpad: touchpad found
看起来这个问题在当前的 Ubuntu(12.04、12.10)中仍未解决。
答案1
好的,让我们尝试深入研究
Xorg 自定义配置:
随着 HAL Xorg 用途的弃用udev用于设备检测。因此,在配置 XServer 时,将考虑定义的任何 udev 规则。但是,由于 Xorg 支持配置文件,因此无需定义 udev 规则,事实上,不鼓励定义 udev 规则。
自定义配置文件遵循以下优先级:
- 设置来自
/usr/share/X11/xorg.conf.d/
- udev 规则(我不太确定 udev 优先级,可能更低)
- 设置来自
/etc/X11/xorg.conf.d/
- 中的设置
/etc/X11/xorg.conf
其中旧的、仍受支持的规则具有最高优先级。因此,当发现具有更高优先级的其他规则时,xorg.conf
您添加的任何规则的有效性都会降低。/usr/share/X11/xorg.conf.d/
要定义不使用 xorg.conf 文件的自定义配置,您需要创建一个文件夹/etc/X11/xorg.conf.d/
,将自定义设备配置文件放入其中(此处为 50-synaptics.conf)。但是,现有 xorg.conf 文件中的任何其他定义都将覆盖这些定义,因此您需要删除 xorg.conf 文件。
不幸的是,我无法使用 Synaptics Touchpad,因此无法测试它是否真的有效。关于如何配置 X 的非常好的教程(虽然很陌生)可以在Fedora 项目维基。
祝你好运。
答案2
我使用的是 Ubuntu 11.04,显然 gnome 设置守护进程会覆盖 synaptics 选项(无论您将它们放在哪里)。事实上,对于“TapButton”选项,djkeikyb 尝试使用的值是默认值,而守护进程会将其反转。
在启动时使用 synclient 命令运行脚本是不可能的,因为 djkeikyb 描述了虚拟终端,而且每次我连接/断开 USB 鼠标时,值也会被重置。
我决定禁用鼠标/触摸板属性的设置守护进程。在终端中输入:
gconf-editor
然后转到应用程序 > gnome_settings_daemon > 插件 > 鼠标并关闭活动选项。当然,副作用是无法在系统 > 首选项 > 鼠标下编辑鼠标属性
答案3
目前看来,这似乎是一个错误。我将继续询问 synaptic 和 xorg 邮件列表并提交错误报告。这是我不满意的答案 :/
虽然我还没有机会在 Ubuntu 11.04 中测试我的选项,但 synaptics 和 xorg 也不要在最新的 (Thu Jun 2 03:09:43 PDT 2011) Arch 安装中按预期工作。因此,它似乎是上游错误,而不是 Ubuntu 特有的。
答案4
不确定是否有帮助,但如果你将其保存为 xorg.conf 它应该可以工作