我从哪里开始制作linux输入黑客?

gfx*_*onk 10 x11 mouse events input

当您按住"shift"并在Mac上用鼠标滚动时,它会将垂直滚动动作解释为水平滚动动作.这是我在linux上工作时最缺乏的功能,我很乐意把它带到linux(因为我看得很透彻,似乎没有其他人这样做过).

我希望这可以通过某种运行时插件来完成,或者至少以一种不需要我重新编译所有其他应用程序来使用它们的方式来完成.我的问题是:那里有哪些库可以编写这样的插件?编写某种脚本会很好,因为看起来功能不应该那么复杂,但如果需要,我可以用C和C++编写代码.

我已经研究过像XEvIE(已停产)和XTrap这样的X解决方案(似乎已经放弃了).我很乐意现在仅限于GTK/GNOME,至少作为概念证明.

如果这不能作为插件完成,我应该接近哪个开源项目(Xfree86?GNOME?其他人?)尝试将此功能纳入其中?

- 更新(使用解决方案!):

安装软件包"xbindkeys"和"xautomation".然后在〜/ .xbindkeysrc.scm文件中写下以下内容:

; bind shift + vertical scroll to horizontal scroll events
(xbindkey '(shift "b:4") "xte 'mouseclick 6'")
(xbindkey '(shift "b:5") "xte 'mouseclick 7'")

然后运行xbindkeys

str*_*ika 1

我不确定,但 evdev 可以做这样的事情。例如,当按下鼠标按钮(向上/向下滚动也是一个按钮)时,它可以模拟键盘按下。可能可以进行水平滚动(可能使用键盘左/右箭头?)。