如何在 12.04 LTS 中启用鼠标中键模拟?

Rqo*_*mey 25 xfce mouse touchpad xubuntu

如何在 12.04 LTS 中启用鼠标中键模拟?我认为它在上一个版本中被默认禁用。我确定这是一个愚蠢的问题,但我找不到通用答案,它们似乎都是特定于触摸板的(即,多点触控相关,我没有),或者使用我认为不是的普通的 ubuntu 方法(创建 xorg.conf 文件)。我在戴尔 inspiron mini 上使用 xubuntu 变体 (xfce)。

我实际上只是在那里进行测试,如果我同时用两个手指点击它会显示一个上下文菜单(如右键单击)。有线我不知道这个触控板甚至可以告诉有两个手指点击......

以前的行为是同时单击两个触摸板按钮(它们是内置按钮)产生中间单击。他们不再这样做了。我从未使用过双击,而是使用了实际的按钮。

为了澄清我使用的是内置触摸板,而不是外部鼠标。Gpointings 将其检测为突触触摸,我认为这是正确的

更新-链接到下面的问题@medigeek 让我设置了一个双指点击来模拟中间点击,但我仍然无法同时点击两个按钮

synclient 的输出在这里:

LeftEdge                = 1760
RightEdge               = 5302
TopEdge                 = 1639
BottomEdge              = 4479
FingerLow               = 25
FingerHigh              = 30
FingerPress             = 256
MaxTapTime              = 180
MaxTapMove              = 232
MaxDoubleTapTime        = 180
SingleTapTimeout        = 180
ClickTime               = 100
FastTaps                = 0
EmulateMidButtonTime    = 0
EmulateTwoFingerMinZ    = 282
EmulateTwoFingerMinW    = 7
VertScrollDelta         = 105
HorizScrollDelta        = 105
VertEdgeScroll          = 1
HorizEdgeScroll         = 0
CornerCoasting          = 0
VertTwoFingerScroll     = 0
HorizTwoFingerScroll    = 0
MinSpeed                = 1
MaxSpeed                = 1.75
AccelFactor             = 0.0378931
TrackstickSpeed         = 40
EdgeMotionMinZ          = 30
EdgeMotionMaxZ          = 160
EdgeMotionMinSpeed      = 1
EdgeMotionMaxSpeed      = 422
EdgeMotionUseAlways     = 0
TouchpadOff             = 0
LockedDrags             = 0
LockedDragTimeout       = 5000
RTCornerButton          = 2
RBCornerButton          = 3
LTCornerButton          = 0
LBCornerButton          = 0
TapButton1              = 1
TapButton2              = 3
TapButton3              = 0
ClickFinger1            = 1
ClickFinger2            = 1
ClickFinger3            = 0
CircularScrolling       = 0
CircScrollDelta         = 0.1
CircScrollTrigger       = 0
CircularPad             = 0
PalmDetect              = 0
PalmMinWidth            = 10
PalmMinZ                = 200
CoastingSpeed           = 20
CoastingFriction        = 50
PressureMotionMinZ      = 30
PressureMotionMaxZ      = 160
PressureMotionMinFactor = 1
PressureMotionMaxFactor = 1
ResolutionDetect        = 1
GrabEventDevice         = 1
TapAndDragGesture       = 1
AreaLeftEdge            = 0
AreaRightEdge           = 0
AreaTopEdge             = 0
AreaBottomEdge          = 0
HorizHysteresis         = 26
VertHysteresis          = 26
ClickPad                = 1
RightButtonAreaLeft     = 0
RightButtonAreaRight    = 0
RightButtonAreaTop      = 0
RightButtonAreaBottom   = 0
MiddleButtonAreaLeft    = 0
MiddleButtonAreaRight   = 0
MiddleButtonAreaTop     = 0
MiddleButtonAreaBottom  = 0
Run Code Online (Sandbox Code Playgroud)

Sav*_*vic 18

图形用户界面解决方案

安装包 gpointing-device-settings

Description-en: configuration tool for pointing devices
 GUI tool for setting pointing devices. Currently it can configure mouse type
 device (mouse, trackpoint etc.) and touchpads.
 .
 For mouse you can configure middle button emulation, wheel emulation and
 scrolling.
 .
 It can enable and disable touchpad, or scrolling on it as well as additional
 parameters like palm detection, locked drags, tapping and scrolling.
 .
 It is a successor of GSynaptics.
Run Code Online (Sandbox Code Playgroud)

gpointing-device-settings 鼠标中键模拟

控制台/终端解决方案#1

或者,试试这个:

gsettings set org.gnome.settings-daemon.peripherals.mouse middle-button-enabled true
Run Code Online (Sandbox Code Playgroud)

替代解决方案可能需要安装gnome-settings-daemon包。

控制台/终端解决方案#2

使用synclient命令您可以查看您的突触触摸板选项。

  1. 运行synclient并查看可用的变量

  2. 您可以使用以下命令设置/更改 synclient 选项:(syclient var=1其中var是您希望更改的变量,值为1

    阅读有关每个变量的手册页:http : //manpages.ubuntu.com/synaptics


什么对我有用

无需弄清楚如何按下触摸板的两个按钮,而是将两根手指保持/按下触摸板然后用第三根手指单击触摸板的左键单击按钮。这默认模拟一个中间按钮。

什么对原始海报有用

a) 设置TapButton变量适用于两指点击

b) 如果您仍想同时单击两个按钮并生成中间按钮模拟,请执行:

synclient EmulateMidButtonTime=100
Run Code Online (Sandbox Code Playgroud)

EmulateMidButtonTime允许您更改生成中间按钮所需的时间(允许单击两个按钮的时间段)。100 表示 100 毫秒 (ms)。

您可以将其设置为更高的值,例如synclient EmulateMidButtonTime=500(500ms)。


opi*_*no9 15

在 Ubuntu 17 和 XFCE 中,鼠标中键复制粘贴根本不起作用。

同样的问题仍然存在于 Ubuntu 20.x 中。

解决方案

要启用鼠标中键粘贴功能,请编辑 xinput。

  1. 查询您的设备:

     xinput list
    
    Run Code Online (Sandbox Code Playgroud)

识别您的鼠标。对我来说,它是 10 号设备。

  1. xinput list-props 10 给我设置鼠标。

  2. 我需要更改“libinput Middle Emulation Enabled (294):”的值,并且我需要以 root 身份执行此操作:

     xinput set-prop 10 "libinput Middle Emulation Enabled" 1
    
    Run Code Online (Sandbox Code Playgroud)
  3. 检查值是否更改为 1:

     xinput list-props 10
    
    Run Code Online (Sandbox Code Playgroud)

是的,它有效:“libinput Middle Emulation Enabled (294): 1”

在最近的 Ubuntu 20.x 中,连接带有 2 个按钮的 Logitech Marble Mouse(旧的白色模型)给了我“libinput Middle Emulation Enabled (292): 0”,我相应地更改了它。

在 Ubuntu 18 和 XFCE 中有一个重大变化:不再是“libinput Button Middle”。而是“Evdev 第三按钮仿真”。所以整条线现在是(对于我的机器):

sudo xinput set-prop 10 "Evdev Third Button Emulation" 1 
Run Code Online (Sandbox Code Playgroud)

要使其持久化,请在~/.xstartup!
就我而言,它看起来和以前一样:

xinput set-prop 10 "libinput Middle Emulation Enabled" 1
Run Code Online (Sandbox Code Playgroud)

这使它从一开始就有效。

提示:如果您的 Linux GUI 的风格或表面不支持 xinput,您每次打开终端时可能会得到一个小错误行。

更好的解决方案总是受欢迎的:-)

这就是它的背后

我强烈不同意 Ubuntu 和 Gnome 决定禁用标准的 Unix Middle Mouse 粘贴。即使在 XFCE Ubuntu 17 中它也被破坏了。愿这个决定背后的经理们早日找到痛苦的结局。你让我的生活变得艰难。

非常非常感谢Gilles找到了解决方案!!!

我在使用 Ubuntu 16、14.10 及更早版本时遇到了同样的问题: 终端中的Unix 样式复制粘贴不起作用。令人失望的默认设置。但是,这是一个解决方案(部分是其他人的出色工作的总结):

  • 为了解决终端问题,我成功地将以下几行放入我的xorg.conf

(看看 /etc/X11/xorg.conf 是否适合你。对于 Lubuntu 等可能会有所不同)

Section "InputClass"
    Identifier "middle button emulation class"
    MatchIsPointer "on"
    Option "Emulate3Buttons" "on"
EndSection
Run Code Online (Sandbox Code Playgroud)
  • 缺少第三个鼠标按钮(触摸板,大理石鼠标)的非常恼人的故障实际上可以通过“gpointing-device-settings”解决。只需使用 CLI 安装:

    apt-get install gpointing-device-settings

然后调用gpointing-device-settings以获取 gui 窗口。 备注:在较新的 Ubuntu 中存在一个未修复的错误,该错误会在重新启动时清除您的设置。您可以设置gpointing-device-settings自动启动,但仍然需要提示。我不知道任何适当的配置解决方案。

可能有些步骤需要 sudo 或 root 访问权限。我假设你知道。

但是,现在我可以通过标记和鼠标中键使用 unixish 复制粘贴。至少在终端。对于 Marble 鼠标,有一篇单独的文章,其中包含许多配置详细信息。

附录

在 Ubuntu 17 和 XFCE 中,鼠标中键复制粘贴根本不起作用。

韦兰不一样。

有时输入会很有帮助

gsettings set org.gnome.settings-daemon.peripherals.mouse middle-button-enabled true
Run Code Online (Sandbox Code Playgroud)

幸运的是,它是持久的。否则尝试创建一个启动脚本。

  • 杰出的!谢谢你。在 17.04 上完美运行 (2认同)
  • 不适用于 16.04。失败并显示错误“属性 'libinput Middle Emulation Enabled' 不存在,您需要指定其类型和格式” (2认同)

rub*_*o77 8

您还可以通过调用在三指点击上设置鼠标中键

synclient TapButton3=2
Run Code Online (Sandbox Code Playgroud)

(将其放入脚本并将其添加到您的启动程序中)

令人奇怪的是,事业似乎是一个错误报告,这应该已得到修复。

来源:在我的突触触摸板上启用三指点击: