VMware Linux Mouse Wheel Tuning and Smooth Scrolling

VMware Linux Mouse Wheel Tuning and Smooth Scrolling

HuAmI Lv3

VMware Linux命令窗口鼠标滑轮体验优化解决方案

为什么 VMware 下鼠标滚轮手感差

  1. 虚拟机的输入延迟:
    VMware 把宿主机的鼠标输入“翻译”成虚拟信号发送到客机,滚轮事件分辨率很低(一次滚动往往是好几行)。

  2. libinput 默认步长过大:
    Linux 桌面默认按“行”滚动,而不是“像素滚动”,导致特别跳。

  3. 没有加速度补偿:
    虚拟设备(如 VirtualPS/2 VMMouse)通常不支持高精度滚动(不像真实 USB 鼠标那样有分级信号)。

启用平滑滚动(针对 GNOME / libinput)

在命令行执行:

1
sudo nano /etc/libinput/local-overrides.quirks

添加以下内容:

1
2
3
4
[VMware Virtual Mouse]
MatchName=VMware VMware Virtual USB Mouse
AttrScrollMethod=button
AttrScrollPoints=1

然后重启或运行:

1
sudo udevadm control --reload-rules && sudo udevadm trigger

若出现报错

img

这个提示说明:

你的系统里还没有 /etc/libinput/ 这个目录。

不同的 Linux 发行版(特别是在虚拟机中)默认并不会创建这个文件夹。
解决很简单:


方法 :先创建目录

1
sudo mkdir -p /etc/libinput

然后再执行:

1
sudo nano /etc/libinput/local-overrides.quirks

粘贴进去:

1
2
3
4
[VMware Virtual Mouse]          
MatchName=VMware VMware Virtual USB Mouse //“设备匹配规则”—— 指定这份配置只对 “名称为 VMware 虚拟 USB 鼠标” 的设备生效
AttrScrollMethod=button //设置滚动方式为 “按钮模拟滚动”—— 把鼠标滚轮的 “行级触发”(默认一次滚多行)分成 “像素级触发”,是实现 “平滑滚动” 的核心;
AttrScrollPoints=1 //设置最小滚动步长为 1 个单位(接近像素级)—— 解决默认 “一次滚多行” 的跳变问题,让滚动更细腻。

保存(Ctrl+O → 回车 → Ctrl+X 退出),
再执行:

1
2
3
4
sudo udevadm control --reload-rules && sudo udevadm trigger    //udevadm 是 Linux 管理设备规则的工具
//重新加载系统的设备规则(修改配置文件后,必须重载才能让 系统识别新规则)
//触发设备规则生效(相当于 “刷新” 所有设备,让新配置立即
应用到虚拟鼠标上)。

重启后生效。

使用 imwheel 设置滚轮加速

既然你已经有平滑滚动,可以让 imwheel 帮你加速快速滚动:

1
sudo apt install imwheel -y

然后创建配置:

1
2
nano ~/.imwheelrc             //  ~:代表当前用户的主目录(比如你的用户名是 user,路径就是 /home/user/)
// .imwheelrc:imwheel 的配置文件(文件名前加 . 表示 “隐藏文件”,专门存放个人的工具配置)

内容如下 👇:

1
2
3
4
5
6
7
".*"
None, Up, Button4, 5
None, Down, Button5, 5
Control_L, Up, Button4, 10
Control_L, Down, Button5, 10
Shift_L, Up, Button4, 2
Shift_L, Down, Button5, 2
配置行 辅助键 滚轮方向 鼠标按键 滚动倍率 实际效果(通俗理解)
None, Up, Button4, 5 None(无按键) Up(上滚) Button4 5 日常默认滚动:滚一下相当于原来的 5 倍速度(平衡平滑与效率)
None, Down, Button5, 5 None(无按键) Down(下滚) Button5 5 同上,下滚的默认加速
Control_L, Up, Button4, 10 Control_L(左 Ctrl 键) Up(上滚) Button4 10 按住 Ctrl + 上滚:快速滚动(适合长文档 / 网页)
Control_L, Down, Button5, 10 Control_L(左 Ctrl 键) Down(下滚) Button5 10 按住 Ctrl + 下滚:快速下滚
Shift_L, Up, Button4, 2 Shift_L(左 Shift 键) Up(上滚) Button4 2 按住 Shift + 上滚:精细滚动(适合代码 / 表格对齐)
Shift_L, Down, Button5, 2 Shift_L(左 Shift 键) Down(下滚) Button5 2 按住 Shift + 下滚:精细下滚

保存退出后,运行:

1
imwheel -kill

你可以反复调最后那个数字(5):

  • 越大 → 滚动速度更快(适合高分辨率屏幕);
  • 越小 → 更自然。
  • Title: VMware Linux Mouse Wheel Tuning and Smooth Scrolling
  • Author: HuAmI
  • Created at : 2025-11-09 21:57:00
  • Updated at : 2025-11-09 23:12:47
  • Link: https://redefine.ohevan.com/2025/11/09/VmwareLinuxmouseScrolling/
  • License: This work is licensed under CC BY-NC-SA 4.0.
Comments