当我ctrl-;
在 Gnome 终端中输入时,它会打印一个带下划线的字母 e。如果我输入一堆字母,它们也会带有下划线。当我按 Enter 时,下划线消失,第一个 e 也消失。它在做什么?
(图形)Emacs 做的几乎一样。当我输入 时ctrl-;
,Emacs 会显示一个带有字母 e 的图形覆盖(看起来不像 Emacs)。键入字母会添加到此叠加层中,当我按 Enter 时,字母(除了 e)会被放入 Emacs 缓冲区。
这不会发生在我的另一台运行 Ubuntu 的笔记本电脑上。这个正在运行 Fedora 36。
如果我使用 xterm 尝试上述操作,我会像在 Emacs 中一样获得覆盖。如果我将焦点转移到另一个窗口而不按 Enter,那么带下划线的内容就会消失。
带下划线的输入覆盖(“预编辑”字段)是各种输入法用来在字符发送到应用程序之前组合字符的机制。例如,在输入日语时,您可以在日语 IME 的帮助下一次编写整个单词。在 GNOME 中,'Compose' 键和 Ctrl+Shift+U 'Unicode' 输入使用相同的机制。
您找到的特定快捷方式显然是“表情符号输入”热键。我不确定它是 GTK3 内置的,还是由 IBus IME 框架提供的(它们试图彼此保持一致,但情况一直在变化,我已经迷失了方向)。它应该在显示“自动完成”弹出窗口的同时接受表情符号名称,以及像 Ctrl+Shift+U 一样接受 Unicode 十六进制代码点。
请参阅以前的类似帖子(快捷方式略有不同):我的 X11 使用 Ctrl-Period 做了什么,如何禁用它?