Har*_*han 14 xmodmap key-binding
当一个按下并保持了某些键,如Control,Alt,Super,,同时与生成模拟键以外键的多个版本及新闻事件被推&释放几次不会产生释放事件。
我想把一些多媒体键或Fn键盘上的键做成修饰键,并xev
显示它们都是第二种类型。是否可以使普通键具有粘性从而不生成释放事件?
小智 1
您需要做的第一件事是识别您想要替换的按键的“keycode”或“keysym”以及您想要替换它的按键。
让我们做一个将“F12”键替换为“Left Super”的示例。
xev | awk -F'[ )]+' '/^KeyPress/ { a[NR+2] } NR in a { printf "%-3s %s\n", $5, $8 }'
这将运行 xev,它捕获按键,去除不相关的信息,并通过终端输出为您提供您按下的按键的“keycode”和“keysym”。按要替换的每个键以及要替换的键。
当我按键盘上的 F12 时,我得到以下输出:
96 F12
当我按键盘上的 Left Super 时,我得到以下输出:
133 Super_L
您需要将它们写下来或记住它们以供以后使用。
keycode 96 = Super_L
或者
keysym F12 = Super_L
在我的测试中,任一选项都应该有效。
将此文件保存在您的主目录中.Xmodmap
(注意大写的“X”)
要测试它,请在终端中再次从主目录输入以下命令:
xmodmap .Xmodmap
如果一切按计划进行,您的 F12 键现在应该充当左超级键。
每次对文件进行更改时,.Xmodmap
您都可以再次运行上述命令来应用更改。
您不需要每次登录时都运行此命令,因为每次登录时都应该读取并应用该命令。但是,如果这不起作用,那么您当然可以将此命令放入启动脚本中。
有一些注意事项需要提及:
a) 某些键盘有一个标记为“Fn”或类似的键,用于访问按键上的辅助功能,例如多媒体控制。根据我的阅读,您无法重新映射这个特定的“Fn”键本身,尽管您应该能够重新映射按“Fn+键”提供的各个多媒体键。
b) 如果您拔下键盘并重新插入,您将需要.Xmodmap
使用上面步骤 4 中给出的相同命令重新加载配置。
c) 如果由于某种原因你想注释掉(忽略)文件中的一行.Xmodmap
,你需要添加一个“!” 位于该行的前面(而不是像其他一些配置文件中那样的“#”)。
归档时间: |
|
查看次数: |
1955 次 |
最近记录: |