我需要编辑和重新编译哪些源代码才能使光标变慢?

我需要编辑和重新编译哪些源代码才能使光标变慢?

我有 Linux Mint 19.3 (MATE x64),并且我有一个 Logitech G402 鼠标,我想与它一起使用。

使用默认设置,我的光标移动准确50比我希望它移动的速度快几倍。

我尝试了各种设置来让光标变慢,但它们就是不起作用。

指针速度设置(“开始”菜单 -> 首选项 -> 鼠标)几乎没有什么区别,即使我将它们设置为绝对最小值。

xinput这是默认设置的输出:

$ xinput list-props "Logitech Gaming Mouse G402"
Device 'Logitech Gaming Mouse G402':
    Device Enabled (155):   1
    Coordinate Transformation Matrix (157): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    libinput Natural Scrolling Enabled (292):   0
    libinput Natural Scrolling Enabled Default (293):   0
    libinput Scroll Methods Available (294):    0, 0, 1
    libinput Scroll Method Enabled (295):   0, 0, 0
    libinput Scroll Method Enabled Default (296):   0, 0, 0
    libinput Button Scrolling Button (297): 2
    libinput Button Scrolling Button Default (298): 2
    libinput Middle Emulation Enabled (299):    1
    libinput Middle Emulation Enabled Default (300):    0
    libinput Accel Speed (301): 0.000000
    libinput Accel Speed Default (302): 0.000000
    libinput Accel Profiles Available (303):    1, 1
    libinput Accel Profile Enabled (304):   1, 0
    libinput Accel Profile Enabled Default (305):   1, 0
    libinput Left Handed Enabled (306): 0
    libinput Left Handed Enabled Default (307): 0
    libinput Send Events Modes Available (277): 1, 0
    libinput Send Events Mode Enabled (278):    0, 0
    libinput Send Events Mode Enabled Default (279):    0, 0
    Device Node (280):  "/dev/input/event5"
    Device Product ID (281):    1133, 49278
    libinput Drag Lock Buttons (308):   <no items>
    libinput Horizontal Scroll Enabled (309):   1

这里唯一可以影响我的光标速度的选项是坐标变换矩阵(也是加速速度,但不会超过 -1,我需要它远远超过 -1)。如果我将其设置为1 0 0 0 1 0 0 0 50,我的光标速度将正确除以 50。然而非标准的坐标变换矩阵将导致捕获光标的游戏(例如《我的世界》)无法正常工作,每次释放光标时都会将光标重置到几乎屏幕的左上角,并使我的角色在旋转时向左上方疯狂旋转被捕获。

在我看来,我已经没有办法让我的鼠标使用预期的方法正常工作,所以我觉得我必须编辑一些源代码以使我的光标以合理的速度移动,听起来很疯狂。我非常绝望,以至于我准备将硬编码/ 50.0放入一些 C 代码中,编译,安装,然后就到此为止,但不幸的是我不知道在哪里将它放入。

当然,我们都可能知道这是我在这里问的一个怪物般的 XY 问题,所以如果有更多选项来配置我的光标(我几天都没有找到或谷歌),那么我会很高兴了解他们。

答案1

libinput我在 , 中找到了相关代码filter-low-dpi.c。我将函数的返回值calculate_acceleration_factor除以50.0,然后按照说明进行编译和安装。

如果您遇到类似问题,根据您的鼠标型号,您可能需要进行编辑filter-mouse.c

相关内容