增加鼠标滚轮滚动速度


81

如标题所述,我想增加使用鼠标滚轮滚动时传递的行数。我知道存在针对Firefox和Chromium的方法,尽管我希望整个系统都能使用,主要是因为PDF阅读器。

我在台式机上,使用Microsoft Wireless Mouse 5000。


9
有人认为这应该从Mouse & Touchpad系统配置中可以实现。太可惜了,我们仍然需要3rd party软件(目前)。
米(Domi)2014年

罗技(Logitech)具有超级滚动鼠标,它们具有自由旋转的滚轮。我个人有m705。仅更改硬件通常比尝试对软件进行更改要简单得多。但是要小心,您可能最终想要降低这些鼠标的滚动速度(这就是我偶然发现此问题的方式)!
Yrogirg '18

Answers:


79

预先

使用当前使用的输入驱动器系统,至少在没有缺点的情况下,无法更改鼠标的滚动速度。您可以使用KDE设置来调​​整Qt应用程序的滚动速度,但是当前以通用方式更改滚动的唯一方法是使用imwheel,这似乎在许多方面都存在问题(请参见注释)。将来,此问题将通过libinput和系统硬件数据库进行修复。

目前的方式

安装imwheel使用下面的命令或软件中心

$ sudo apt-get install imwheel

创建(如果需要)并~/.imwheelrc使用您选择的编辑器(例如gedit)编辑配置文件。填写以下内容以提高每个命令的滚动速度。注意:此配置文件会将这些新的滚动设置应用于所有程序(包括终端,可能不是您想要的)。

".*"
None,       Up,     Up,     3
None,       Down,   Down,   3

例如,如果您只想将这些设置应用于Chrome,请改用以下设置:

".*-chrome*"
None,       Up,     Up,     3
None,       Down,   Down,   3

3是滚动乘数增加滚轮的有效性。在项目的自述文件中,它称为“ REPS”。自述文件指出:

[REPS]

重复次数(重复次数)使您可以说出一个数字,表示要按下输出键符号的次数。有关每个修饰键组合的默认重复次数,请参见默认绑定上的图表(该图表位于本文档的结尾)。

换句话说,它是一个滚动倍增器。如果REPS设置为3,则意味着当鼠标滚轮命令一个滚动命令时,软件将拦截该命令并将3个命令发送给PC,而不是1个,从而使PC滚动3倍或更远。

有关更多信息,请参见联机帮助页:

$ man imwheel

或参考该项目的自述文件

您可以imwheel通过输入以下内容开始:

$ imwheel

请确保不要两次启动砂轮!这是一个已知的错误,但是您可以使用以下命令停止imwheel:

$ killall imwheel

imwheel在每次启动计算机时自动启动,必须在加载x窗口后将其添加到启动菜单。重要说明:由于imwheel依赖于x窗口已经在运行,因此如果将其添加到crontab,/ etc / init.d或/etc/rc.local中,它将无法工作。这意味着您必须以这种方式执行此操作:

Ubuntu:
使用“启动应用程序” GUI编辑器添加imwheel为启动程序:https : //askubuntu.com/a/48327/327339

Xubuntu:
使用“会话和启动” GUI编辑器->应用程序自动启动->添加添加imwheel为启动程序。

在此处输入图片说明

此处提供更多屏幕截图:https : //askubuntu.com/a/369443/327339

未来

本教程目前正在开发中。

libinput似乎随Wily Werewolf(15.10)一起提供,您需要在其中安装软件包xserver-xorg-input-libinput。安装libinput完成后

$ sudo apt-get install xserver-xorg-input-libinput

重新启动Xorg之后,它应该用于所有输入(注销就足够了)。现在,您已经libinput可以调整鼠标的设置了。您可以在/lib/udev/hwdb.d/70-mouse.hwdb文件中找到完整的教程。让我在这里仅介绍基础知识。

需要按照以下步骤进行操作root。因此,我谨在此提醒您,您所做的一切都需要承担责任。

供应商ID首先得到<vid>和产品ID <pid>使用lsusb。这里以MX 518 Logitech鼠标为例。如果您的输出中包含以下行lsusb

Bus 005 Device 002: ID 046d:c051 Logitech, Inc. G3 (MX518) Optical Mouse

<vid>IS 046d<pid>IS c051

然后创建一个如下所示的文件 gksudo gedit /etc/udev/hwdb.d/71-mouse-local.hwdb

mouse:usb:v<vid>p<pid>:name:*:
    MOUSE_WHEEL_CLICK_ANGLE=??

例如,上述Logitech MX 518示例的文件:

mouse:usb:v046dpc051:name:*:
    MOUSE_WHEEL_CLICK_ANGLE=30

此文件将鼠标滚轮的点击角设置为30°(默认值通常为15)。要使用此设置,请使用以下命令更新hwdb:

udevadm hwdb --update
udevadm trigger /dev/input/event${id}

一个可以计算出${id}使用xinput(看出来你的鼠标的ID),然后运行xinput list-props ${xinput_id}


2
有效!谢谢,尽管我唯一要抱怨的是使用imwheel禁用了在窗口之间切换的功能,只需在Unity Launcher中将鼠标滚动到其图标上即可。
罗德里戈·马丁斯

2
别客气。昨天我检查了您的问题,如果您只需要提高pdf查看器的轮速".*""Evince"则可以在使用Evince的情况下替换by 。然后Unity-Launcher按预期工作。
tvn

1
数字可以降低吗?我的轮子滚动得太快了。尝试用“ 1”代替“ 3”仍然太快。
DarenW

6
这是一种不好的,不实用的方法。在Nautilus中,标记的文件来回跳3行,而不是实际滚动。当您“越过边界”时它会滚动,但就像在键盘上向上/向下拨动3次一样。崇高的文字中也是如此,我猜想很多其他编也是如此。(Ubuntu 13.10)
redanimalwar 2014年

3
有人Future解决方案成功了吗?我已经尝试过了,但是还没有开始工作。我希望我知道一种方法,甚至可以知道是否MOUSE_WHEEL_CLICK_ANGLE已成功更改,但是我不知道如何检查其当前值。默认角度随鼠标btw。的不同而变化,如在中所示/usr/lib/udev/hwdb.d/70-mouse.hwdb,尽管当前大多数角度为15。
miyalys

27

请注意,~/.imwheelrc在接受的答案中使用推荐值实际上并不会提高滚轮速度。而是用多个箭头击键代替滚动。这样做的缺点是,除非将焦点更改为窗口,否则无法滚动窗口,而不是默认行为。该答案旨在提供一种行为,使其更接近于本机行为。

为了提供Ubuntu> 14.04的简明答案(将@tvm@redanimalwar的答案与@ aroll605的注释相结合),似乎实际上提高滚轮速度的最佳选择是安装imwheel

  1. sudo apt install imwheel(根据您的系统替换aptapt-get

  2. gedit ~/.imwheelrc 并粘贴

    ".*"
    None,      Up,   Button4, 3
    None,      Down, Button5, 3
    Control_L, Up,   Control_L|Button4
    Control_L, Down, Control_L|Button5
    Shift_L,   Up,   Shift_L|Button4
    Shift_L,   Down, Shift_L|Button5
    

    您应该#在各行中尝试不同的值

    None,      Up,   Button4, #
    None,      Up,   Button5, #
    
  3. 要测试设置,请使用以下命令 killall imwheel && imwheel -b "4 5"

  4. 打开启动应用程序并添加 imwheel -b "4 5"

请注意,使用选项-b "4 5"限制imwheel只影响滚轮,讨论在这里


我的画卷确实很生涩/已延迟
Wolf

@Wolf,您尝试用较小的值代替#吗? 21或什至十进制值,例如0.5
史蒂文·霍维尔

是的 即使在数字较小的情况下,它也似乎会结结巴巴,例如,一按转盘有时会稍微滚动一下,然后跳过其余的距离。我删除了程序,然后恢复到平滑的状态,但不是我想要的滚动间隔。我认为增加一些数字的含义将是有用的,尽管如此,该解决方案对我来说最有效2,而且考虑到所有的困难。

我建议尝试使用另一只鼠标来比较行为,而不是作为解决方案,而是缩小问题根源。如果仍然有其他鼠标跳过,则说明您的配置中肯定存在问题;您可以通过使用实时CD进行测试来确定这一结论,以确定自安装以来是否有所变化。如果其他鼠标没有跳过,那么很遗憾,您选择的鼠标在Ubuntu上没有很好的支持。也许您可以使用相同的鼠标及其操作来搜索其他人。
史蒂文·霍维尔

^这个工作对我来说
杰米Hutber

27

//编辑

由于这会不时引起一些批评:我不再使用它了(重新安装后变得懒惰),现在我认为此脚本的滑块和其他内容开销太大。人们还指出了与此相关的问题。因此,作为一个极简主义者,我现在自己创建了配置。对于大多数人来说,这可能只是一回事。

我将其编辑为包含您所需所有内容的4个步骤的指南。

另一个更新是:自从我切换到KDE以来,这实际上为Gnome以及其他一百万种设置提供了设置(甚至没有意识到我错过了KDE有多少)。问题是KDE鼠标设置实际上对Firefox(以及我假设的其他GTK应用程序)没有影响,但是由于我的主要目的实际上是网页浏览,所以我现在发现您实际上可以调整Firefox本身的鼠标滚动量。

about:config
mousewheel.default.delta_multiplier_y

我将其设置为600,对我来说是完美的

//结束编辑

接受的答案具有一个配置,无论出于何种原因,该配置都会将滚动映射到键盘上的UP和DOWN。对我来说毫无意义。

发现了一个完美的脚本,它实际上可以映射到鼠标并添加GUI来设置鼠标速度。

#!/bin/bash
# Version 0.1 Tuesday, 07 May 2013
# Comments and complaints http://www.nicknorton.net
# GUI for mouse wheel speed using imwheel in Gnome
# imwheel needs to be installed for this script to work
# sudo apt-get install imwheel
# Pretty much hard wired to only use a mouse with
# left, right and wheel in the middle.
# If you have a mouse with complications or special needs,
# use the command xev to find what your wheel does.
#
### see if imwheel config exists, if not create it ###
if [ ! -f ~/.imwheelrc ]
then

cat >~/.imwheelrc<<EOF
".*"
None,      Up,   Button4, 1
None,      Down, Button5, 1
Control_L, Up,   Control_L|Button4
Control_L, Down, Control_L|Button5
Shift_L,   Up,   Shift_L|Button4
Shift_L,   Down, Shift_L|Button5
EOF

fi
##########################################################

CURRENT_VALUE=$(awk -F 'Button4,' '{print $2}' ~/.imwheelrc)

NEW_VALUE=$(zenity --scale --window-icon=info --ok-label=Apply --title="Wheelies" --text "Mouse wheel speed:" --min-value=1 --max-value=100 --value="$CURRENT_VALUE" --step 1)

if [ "$NEW_VALUE" == "" ];
then exit 0
fi

sed -i "s/\($TARGET_KEY *Button4, *\).*/\1$NEW_VALUE/" ~/.imwheelrc # find the string Button4, and write new value.
sed -i "s/\($TARGET_KEY *Button5, *\).*/\1$NEW_VALUE/" ~/.imwheelrc # find the string Button5, and write new value.

cat ~/.imwheelrc
imwheel -kill

还有介绍它的视频。我什至还没有看完这个,因为我很快就开始运行它。以下将安装所需的软件包,下载脚本并为我们执行它:

sudo apt-get install -y imwheel
wget http://www.nicknorton.net/mousewheel.sh ~/bin/set-mousewheel
chmod +x ~/bin/set-mousewheel
~/bin/set-mousewheel

将车轮速度设置在一个不错的滑块上并保持快乐。以后只需更改set-mousewheel命令即可。

不知道安装后是否会自动启动imweel,否则我们需要将其添加到启动应用程序中。


2
优秀的东西!该脚本在Ubuntu 14.04 LTS中无法立即使用,但是如果我直接从脚本中取出配置并将其放入.imwheelrc中,它就像一个魅力。
aroll605

14.04 LTS中似乎存在一个错误。有时,它会阻止车轮完全工作,直到我重新启动该过程。仅在启动时发生,并且“ imwheel”包含在启动应用程序列表中。
aroll605

1
我遇到的问题是,imwheel会杀死后退/前进按钮。解决方法是通过将选项imwheel -b "4 5"限制在滚轮上来启动imwheel :askubuntu.com/questions/421645/…–
jmiserez

太好了,但是您不能使用后退/前进按钮
Jamie Hutber '17

在映射方面做得很好,但是脚本未在我的ubuntu上运行:命令zenity --scale --window-icon=info --ok-label=Apply --title="Wheelies" --text "Mouse wheel speed:" --min-value=1 --max-value=100 --value="$CURRENT_VALUE" --step 1返回错误:This option is not available. Please see --help for all possible usages.
Mobigital

14

我的两分钱:我的Microsoft Sculpt人体工学鼠标一次在Ubuntu 15.04(Lenovo ThinkPad x220)上滚动约半页,这真让我很烦。我尝试了各种解决方案,但最终想到了将鼠标从USB端口(无线加密狗)断开并重新连接的想法。瞧!随后出现“正常”滚动速度:)。希望能帮助到别人。


4
我使用相同的设置,遇到了相同的问题,并且获得了相同的成功结果。我很高兴在尝试其他答案之前先阅读了此答案。谢谢@ sammy34
nic

2
同样在这里,重新连接加密狗也解决了。Microsoft Wireless Mouse 2000
Omer Sabic

1
这怎么解决?但成功了:)谢谢:)
Himanshu Bhandari

曾经有过同样的问题(Microsoft Sculpt + ThinPad + Ubuntu 18.10),但unpluggin和repluggin才起作用!
jvoigt

哇,重新连接Microsoft Arc加密狗同样成功。但为什么?
lkraav

9

尽管上述imwheel建议有所帮助,但我发现删除机械式滚动单击机制使鼠标滚轮使用起来更加愉悦-不仅删除了单击,而且控制起来更快,更精确

而且只花了3分钟-请查看以下说明:

http://www.instructables.com/id/Making-a-mouse-wheel-not-click./

简而言之,您将卸下此左弹簧(请小心地将右弹簧完全放回原位):

在此处输入图片说明

注意:我有一个标准的廉价鼠标-Logitech B100,其他人报告在类似型号上成功。你的旅费可能会改变。


使用xmodmap禁用鼠标中键更加容易。(xmodmap .Xmodmap),其中您的.Xmodmap文件包含“ pointer = 1 0 3 4 5 6 7 8 9 10 11 12 13 14 15 16”行。零关闭中间按钮。在启动时运行xmodmap [您的路径.Xmodmap]。
哈里123

3

imwheel 会在chrome中发出两次滚动事件,这很烦人

对于i3wmlibinput用户,我建议libinput_patch,它提供一个条目来实时更改滚动增量,并且在我的用例中要好得多


0

我只是搜索此问题,因为重新启动后,我的鼠标滚轮真的变慢了。在尝试使用其他应用程序(imwheel等)解决它之后,我只是拔下了插头,然后再次插入,它的工作原理就和以前一样。因此,如果重新启动之间的速度改变了,而您却没有做任何事情,那么可能值得尝试。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.