我已映射Insert到Multi_key(也称为Compose),因此我可以输入 ä 或 µ。我xmodmap -e 'keycode 118 = Multi_key'
在我的 wm init 脚本中使用过。
现在,检查/usr/share/X11/locale/en_US.UTF-8/Compose
,我发现已经有输入希腊字母的规则:
...
<dead_grave> <nobreakspace> : "̀" U0300 # COMBINING GRAVE ACCENT
<dead_greek> <A> : "Α" U0391 # GREEK CAPITAL LETTER ALPHA
<dead_greek> <a> : "α" U03B1 # GREEK SMALL LETTER ALPHA
<dead_greek> <B> : "Β" U0392 # GREEK CAPITAL LETTER BETA
<dead_greek> <b> : "β" U03B2 # GREEK SMALL LETTER BETA
<dead_greek> <D> : "Δ" U0394 # GREEK CAPITAL LETTER DELTA
<dead_greek> <d> : "δ" U03B4 # GREEK SMALL LETTER DELTA
...
问题是,dead_greek我的布局中不存在该键。
我可以使用xmodmap -e 'keycode 118 = dead_greek'
映射Insert到它,失去Multi key 或者我可以以某种方式使用序列Multi key+g来注册Dead Greek(丢失像 ğ 或 ġ 这样的字符,我对此没意见)。
我怎样才能最好地用一行命令放入我的 wm init 脚本来完成后者?
请注意,我这样做不是想要改变/usr/share/X11/locale/en_US.UTF-8/Compose
或创建~/.XCompose
并添加所有希腊字母定义再次(因为它们已经存在于系统 Compose 文件中)
简而言之,如何Multi_key+ g→ dead_greek?
更新
对于临时解决方法,基于这个帖子,我能够将shift+映射Insert到dead_greek。
xmodmap -e "keycode 118 shift = Multi_key dead_greek"
奇怪的是,除了 shift 之外,通过列出的修饰符都xmodmap -pm
不能在这里使用,所以这是一个折衷方案......