![Xmodmap - 如何使用 ctrl 作为修饰符?](https://linux22.com/image/981029/Xmodmap%20-%20%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%20ctrl%20%E4%BD%9C%E4%B8%BA%E4%BF%AE%E9%A5%B0%E7%AC%A6%EF%BC%9F.png)
基本键盘布局:
- 1→
1
- Shift+ 1→
!
我想要:Ctrl+1→ ¹
. (上标一个字符)。以下代码允许我输入¹
,但只能使用Shift+ 1:
xmodmap -e "keycode 10 = 1 onesuperior"
最后,我想保留Shift+1和!
。Ctrl+1¹
答案1
我认为这与以下内容非常相关:
保留Right Alt或AltGr并
ISO_Level3_Shift
尝试将其用作Alt
修饰符。您的情况是相反的:保留Right Ctrl或Left Ctrl作为
Control
修饰符,并将其扩展以用于级别转换。我无法让它在两个函数中发挥作用,一个试验是通过添加
actions
:(无效)key <RCTL> { type= "ONE_LEVEL", symbols[Group1]= [ ISO_Level5_Shift ], actions[Group1]= [ SetMods(modifiers=Control) ] };
从xkb - 使用虚拟键和 ISO_Level3_Shift 键时出现问题但它仅以一种方式起作用。
可能,非常了解 XKB 的人可以进行这样的设置。
对我有用的一个设置:(无按键重复)
- 安装和设置
xbindkeys
&xautomation
如下如何更改键盘上按键的功能?(如何创建自定义键盘命令/快捷键?) 将此行添加到
~/.xbindkeysrc
"usleep 150000; xte 'keyup Control_L' 'str ¹' 'keydown Control_L'" m:0x4 + c:10 control + 1
对我来说,我有
¹
。AlgGr所以我也可以使用它:"usleep 150000; xte 'keyup Control_L' 'keydown ISO_Level3_Shift' 'key 1' 'keyup ISO_Level3_Shift' 'keydown Control_L'"
重启
xbindkeys
守护进程pkill xbindkeys;xbindkeys
- 安装和设置
答案2
您可以使用xev
命令,然后按下Ctrl键,然后查看键码,例如我的键码是“键码 37” Ctrl。
但是,我认为上标在编辑器、终端/控制台以及文字处理器以外的任何系统中都不起作用。上标和下标存在于文字编辑器(LibreOffice、Ms Word 等)中,但例如在 Latex 中,我们使用下划线“_”表示下标,^ 表示上标。