我的“鼠标和触摸板”设置中根本没有“双指滚动”选项。我尝试了很多在论坛中找到的终端命令,但都没有成功。谁有可以启用双指滚动的解决方案?
有关于我的一些:
Ubuntu 12.04.1 LTS \n \l
Built-in Pointing Device
Type: Mouse
Interface: PS/2
Buttons: 2
~$ xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ PS/2 Synaptics TouchPad id=15 [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)]
↳ Power Button id=8 [slave keyboard (3)]
↳ Sleep Button id=9 [slave keyboard (3)]
↳ WebCam SC-13HDL10931N id=10 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=14 [slave keyboard (3)]
系统设置截图:
答案1
不要浪费太多时间等待 GUI 配置器跟上硬件。学习在文本文件中或在终端中交互设置配置。以下是方法。
如果 synclient 返回“未找到属性”消息,则意味着您的系统正在使用 libinput 而不是 synaptics 作为驱动程序。检查您的 /etc/X11/xorg.conf.d,如果其中没有任何内容,我预计 Ubuntu 系统会使用 synaptics,因此我很惊讶您没有从“synclient -l”或 shch 获得任何返回值。但在 Fedora 上,默认使用 libinput,因此您的配置可能正在掀起新浪潮。
如果你正在运行 libinput 驱动程序,你可以通过运行
xinput list-props 15
其中 15 是触摸板设备的名称。如果您得到这样的输出(就像我使用 libinput 时得到的那样),那么您就会知道自己在哪里。
Device "HID 413c:3010':
Device Enabled (139): 1
Coordinate Transformation Matrix (141): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Accel Speed (276): 0.000000
libinput Accel Speed Default (277): 0.000000
libinput Accel Profiles Available (278): 1, 1
libinput Accel Profile Enabled (279): 1, 0
libinput Accel Profile Enabled Default (280): 1, 0
libinput Natural Scrolling Enabled (273): 0
libinput Natural Scrolling Enabled Default (274): 0
libinput Send Events Modes Available (257): 1, 0
libinput Send Events Mode Enabled (258): 0, 0
libinput Send Events Mode Enabled Default (259): 0, 0
libinput Left Handed Enabled (281): 0
libinput Left Handed Enabled Default (282): 0
libinput Scroll Methods Available (283): 0, 0, 1
libinput Scroll Method Enabled (284): 0, 0, 0
libinput Scroll Method Enabled Default (285): 0, 0, 0
libinput Button Scrolling Button (286): 2
libinput Button Scrolling Button Default (287): 274
libinput Middle Emulation Enabled (288): 0
libinput Middle Emulation Enabled Default (289): 0
Device Node (260): "/dev/input/event10"
Device Product ID (261): 16700, 12304
libinput Drag Lock Buttons (275): <no items>
libinput Horizonal Scroll Enabled (262):
您可能会考虑尝试让 libinput 工作,但如果您不想这样做,可以按照以下方法使用 synaptics。
要使系统使用 synaptics 驱动程序,请复制此文件
/usr/share/X11/xorg.conf.d/50-synaptics.conf
进入 /etc/X11/xorg.conf.d。重命名,将 50 改为 90,以便它在序列中稍后加载。如果 /etc/X11/xorg.conf.d 中有一个 libinput 配置文件,请将其移到其他地方。
在 syaptics 配置文件中,进行一些编辑。保留前 2 节不变。在最后一节中,您可以输入您的设置。如果我使用 synaptics,以下是我最近使用的内容:
Section "InputClass"
Identifier "Default clickpad buttons"
MatchDriver "synaptics"
Option "SoftButtonAreas" "50% 0 66% 0 0 0 0 0"
Option "TapButton2" "2"
Option "TapButton3" "3"
Option "CoastingFriction" "5"
Option "CoastingSpeed" "8"
Option "AccelFactor" "0.1"
Option "PalmDetect" "1"
Option "PalmMinWidth" "4"
Option "PalmMinZ" "30"
Option "VertEdgeScroll" "1"
Option "FingerHigh" "35"
Option "FingerLow" "20"
EndSection
如果你不知道需要什么设置,可以在命令行中测试。找到你喜欢的设置,然后将其放入文件中。像这样
synclient -l
列出所有设置,然后测试一些
synclient VertEdgeScroll=0 FingerHigh=30
当你这样做时,光标会立即做出不同的反应。当然,当你更改 xorg.conf.d 中的设置时,你需要注销并重新登录。
现在,既然您(可能)正在使用 libinput,那么您可以停下手头的工作,转而考虑学习配置 libinput。这是新事物,未来(可能)也是 Fedora 的现状。这是一个可配置性较差的设备,但它试图先搞定基本原理,然后忘记其他。
libinput 基本上可以按原样使用,但它没有启用点击功能。您需要执行与之前相同的过程,从 /usr/share/X11/xorg.conf.d 复制文件,但这次获取的是 libinput 文件。这几乎不需要任何更改,只需在最后一节插入这一行即可。
Section "InputClass"
Identifier "MyTouchpad"
MatchIsTouchpad "on"
Driver "libinput"
Option "Tapping" "on
EndSection
如果你这样做,那么我认为你将获得两个手指拖动和一些其他基础知识。
libinput 驱动程序的功能并不丰富,它试图使基本功能正确,希望我们不会认为我们需要所有这些功能。但是,在许多设备上(您会看到人们到处大喊大叫),自动、简单的功能设置无法完全正常工作。在我的 Dell Precision 5510 上,大多数功能都运行正常,但“禁区”的自动手掌检测对我来说不太可靠。其余大部分功能都很好。
阅读
- 为什么 libinput 的设置较少:
http://who-t.blogspot.com/2016/04/why-libinput-doesnt-have-lot-of-config.html
- 解释禁区为何能一劳永逸解决棕榈问题的理论文件
https://wayland.freedesktop.org/libinput/doc/latest/palm_detection.html
(尽管目前它还不能在某些计算机上的某些内核上实现这一点)
答案2
以下是在我的 Acer Nitro 5 中解决此问题的方法:
- 前往BIOS 设置;
- 如果“主”选项卡中没有“触摸板”选项,请按 Ctrl+S;它会立即出现。
- 选择‘触摸板’并从 PS2 更改为 I2C;
- 保存并重新启动。
答案3
首先,您应该尝试以下任何一组命令是否启用双指滚动:
synclient VertTwoFingerScroll=1
synclient HorizTwoFingerScroll=1
synclient EmulateTwoFingerMinW=5
synclient EmulateTwoFingerMinZ=48
如果有效,那么您可以按照建议创建一个脚本来启用此功能这里或使用xorg.conf
。