我使用 xbindkeys,我想将我的一些键盘键映射为鼠标按钮。我不想使用鼠标键,因为布局不适用于我的打字。目前我做这样的事情:
"echo ButtonPress 1 | xmacroplay :0"
KP_Insert
"echo ButtonRelease 1 | xmacroplay :0"
release + KP_Insert
然后我关闭 KP_Insert 的键重复(我的设置中的键码 90):
xset -r 90
不幸的是,由 xbindkeys 运行的 xmacroplay 按钮似乎没有被窗口管理器拾取,因此它不能用于调整窗口大小等操作。
我对将键盘键映射到鼠标按钮的其他选项持开放态度,但使用鼠标键功能不仅会占用整个数字小键盘,而且似乎不允许更改哪些键是按钮,并且在我的系统上我只能从任何键盘按下获得按钮 3。
啊-问题不在于使窗口管理器访问密钥的某种特权级别。问题是我使用了修饰符,例如“alt + Button1”来移动窗口。
当我在执行“alt”+ 分配给鼠标按钮 1 的键(在上面的示例中为“KP_Insert”)时,我现在正在执行不同的组合键并且 xbindkeys 无法识别映射。
所以解决方案是(使用 KP_Insert 这是我键盘上的键码 90):
1)关闭要变成鼠标按钮的特定键的重复键:% xset -r 90
2)为.xbindkeysrc添加鼠标按钮的绑定:
3)为您可能想要使用的任何修饰符+鼠标按钮添加绑定,例如“Alt”:
4) 启动或重新加载 xbindkeys:
虽然我会说这在启动我还没有弄清楚的 compiz 插件热键时会遇到一些问题,但在 xbindkeys 之外运行这些行可以正常工作,但在 xbindkeys 内部则不起作用。还没有调试过。