如何将 + hjkl映射到箭头键function?
我已经习惯了vim的hjkl最近搬家了,并且发现自己想要在使用vim之后立即使用它们。
将fn + h / j / k / l映射到左/下/上/右的最佳方法是什么?
编辑:任何 + h / j / k / l只要不与其他键盘快捷键冲突就会令人满意。
尝试这些,不能保证它是否会破坏任何东西,但我希望它不会:
-
如果你通过
xmodmap -pke
查看映射,你会看到它有四列字符映射到每个键,用于不同的修改。 这些修改的顺序就像keycode
= <1> <2> <3> <4> <1>
<2>
<3> <"Mode_switch"-key>
<4>
-
“Mode_switch”,不完全确定,但我想默认情况下映射为空。 实际上,您可以使用
xmodmap
查看密钥的代码,并在结果底部的某处查找它,并找出该代码所属的密钥。 我做的是将其重新分配给另一个密钥,例如Super_L
,它是lefp超级密钥,具有以下代码:xmodmap -e "keysym Super_L = Mode_switch"
或者你可以用自己的选择代替
Super_L
-
现在,继续编辑要重新分配的四个键的列。 让我们在你的
xmodmap
文件中找到它们:xmodmap -pke | grep h
在输出中应该是行说的
keycode 43 = h H h H
编辑它以便它就像
keycode 43 = h H Left H
为此,请使用该命令
xmodmap -e "keycode 43 = h H Left H"
然后尝试它是否有效。
-
对要映射的其余键执行此操作。
我认为这不太可能打破任何严重的问题,只要你可以返回并将keycode
重新编写为原始代码。 唯一可怕的部分是我将“Mode_switch”映射到Super_L的地方。 ( 编辑 :这实际上禁用了我的超级密钥,我可以通过xmodmap -e "keysym Mode_switch = Super_L"
分配来恢复工作,这是xmodmap -e "keysym Mode_switch = Super_L"
。映射一个你知道不会让你失败的密钥到Mode_switch)
虽然我很同情你(我有一个快乐的黑客键盘,并希望在我的笔记本电脑上使用相同的布局,使用Fn +;'[/分别左上向上),function键Fn
几乎总是完全在硬件,并没有办法将其绑定为软件中的修饰键。
如果有任何修饰符,则使用xmodmap
为AltGr
执行以下xmodmap
。
首先,找到h,j,k
和l
的密钥代码。 这可以在终端中运行xev
,然后按下相应的键来完成。 对我来说, h
的键码是43
。 要将此加AltGr
映射到left
,请使用该命令
xmodmap -e "keycode 43 = h H NoSymbol NoSymbol Left"
重复其余的键,你将完成:)要启动,请参阅此问答 。
从某个时候开始xmodmap
被xmodmap
! 要获得系统范围的设置,您必须使用xkb
。 因此,编辑/usr/share/X11/xkb/symbols/
的语言文件,在那里添加更改。
请参阅https://askubuntu.com/a/898462/34298