我在 Debian Stable 上使用 xserver-xorg-input-joystick,因此我可以使用操纵杆代替鼠标。我的鼠标移动功能正常,但在尝试添加其他一些键的功能时却卡住了。
这些工作:
#Left stick
#Pointer
Option "MapAxis1" "mode=relative axis=1.5x"
Option "MapAxis2" "mode=relative axis=1.5y"
#Right stick
#Arrow keys
Option "MapAxis4" "mode=relative keylow=Left keyhigh=Right"
Option "MapAxis5" "mode=relative keylow=Up keyhigh=Down"
但是当我尝试进行组合键操作(这样我就可以在 xmonad 中导航窗口和屏幕)时,我没有运气。
#dpad
#xmonad focus
#up/down toggle window. l/r choose screen.
Option "MapAxis8" "mode=relative keylow=Super_L,k keyhigh=Super_L,j"
Option "MapAxis7" "mode=relative keylow=Super_L,w keyhigh=Super_L,e"
我还尝试了 Super_R、普通的 Super、Meta 和 mod4mask,以及我能想到的任何其他按钮。这些按钮可以打印字母,但似乎不能按住修改键。shift 键是个例外。如果我指定 Shift_L 或 Shift_R,我会得到一个大写字母。
xev 表示正在按下修饰键。如果我降低 Axis8,我会得到按下 Super_L,按下 k,释放 k,释放 Super_L。看起来它应该可以正常工作。也许这是 xmonad 的问题,而不是操纵杆驱动程序的问题?
我在让轴使用其他 XF86 键时也遇到了问题:
# triggers
# song selection
Option "MapAxis3" "mode=relative keylow=none keyhigh=XF86AudioForward"
Option "MapAxis6" "mode=relative keylow=none keyhigh=XF86AudioBack"
这没什么用。知道为什么吗?
如果事实证明我无法在轴上做到这一点,但可以通过按钮完成,那么有没有办法将我的操纵杆视为按钮?
此外,如果有人对鼠标按钮绑定后剩下的其他 5 个按钮有什么建议,我会听取的。
答案1
我承认我根本不了解 debian,但听起来你已经了解了基础知识,并且你已经确认按钮被正确模拟。
我找到了这个链接:
http://zythmer.acyclic.org/files/docs/xev_and_xmodmap
引用一段有趣的话:
通常,Windows 键是一个不错的选择,因为默认情况下没有绑定[强调我的]。
我没有仔细看细节,但它似乎介绍了为 xmodmap 绑定的过程