Compose Key 是什么?2025年2月5日 | 阅读7分钟 “Compose Key”,也称为“Multi-key”,是计算机键盘上的一个键,通过该键,您可以使用下一个(通常是两个或更多个)输入来输入一个不同的字符,通常是一个预先编写的字符或符号。 例如,要插入 ñ,请键入 Compose,然后是 ~,然后是 n。 有可用的软件可以在 Windows 和 macOS 上实现 compose keys,但它们最常用于 Linux 和其他基于 X Window 系统的系统。 ![]() 过往事件 Digital Equipment Corporation (DEC) 的工程师在 LK201 键盘上首次引入了 Compose Character 键,该键盘于 1983 年首次与 VT220 终端一起推出。键盘上的 LED 指示 Compose 序列正在进行中。然而,compose 键并没有成为标准。LK201 引入了箭头键的“倒 T 形”排列以及现在在数字键盘和字母数字块之间标准的命令键组。 随着 1987 年 Sun4 的推出,Sun Microsystems 推出了第一台具有 compose 键的专用 Unix 工作站。Compose LED 位于 Sun Type 5 和 6 工作站键盘的键帽上。 该键具有由 ISO/IEC 9995-7 设计的图形表示,在 ISO/IEC 9995-7“Compose Character”中表示为符号 15,在 ISO 7000“Equipment 上的图形符号”中表示为符号 ISO-7000-2021。Unicode 对此符号的表示是 U+2384 ⎄ COMPOSITION SYMBOL。 大多数为当代 PC 硬件制造的键盘都缺少 compose 键,因为 Microsoft Windows 和 macOS 默认不支持它。软件会在支持 compose 键行为时使用其他键。典型的例子包括 Ctrl 键之一、AltGr 键以及右侧的 Windows 键。没有物理指示器(如键盘 LED)表明 compose 序列正在进行中。但是,操作系统可以在用户的文本输入字段中显示一个图标,例如下文所示的“Compose Character”符号。 在一些由 Digital Equipment Corporation 和 Sun Microsystems 制造的键盘上可以找到。一种称为“compose key”的修饰键允许用户组合两个键来生成键盘上不存在的唯一字符。在键盘上,compose key 被指定为“compose key”或“compose key character”。 ![]() Compose 键
是一些使用它们的例子。 Compose 序列键位冲突表示,如果 compose 键本身不是修饰键,则不需要在按下下一个按键之前释放它。这使得熟练的打字员能够快速输入组合字符。 Compose 序列的早期版本优先使用字母而不是附加符号,模仿手写和重叠技术。例如,Compose n ~ 创建了字符 ñ。尽管在今天的打字机上仍然使用从附加符号死键中得知的反向顺序(Compose for ñ),但这种顺序仍然在使用。允许多个附加符号;例如,您可以键入 Compose '^ a' 来输入 ấ。 通常,非重音字符由字母组成,如果这些字母被重叠输入或以特定顺序排列,则会生成该字符。例如,Compose o c 生成版权符号 ©,而 Compose A E 生成 Æ。 序列长度没有固有的限制;它应该遵循人体工程学和助记指南,同时在完整的 Compose 树中保持可行性。 替代输入技术Compose 键的主要优点是可以使用键盘上存在的任何字母、数字或符号组合来选择字符。这使得序列更具助记性,更容易回忆,更容易猜到(在不确定时),并且能够容纳更大的字符集。 Compose 序列的主要缺点是它们总是需要多按一次或多次按键。Compose 键的位置不方便,也可能减慢打字速度。 一种常用的输入键盘上未直接打印的字符的方法是使用修饰键,例如 AltGr。此技术的固有局限性是 AltGr 仅为每个键引入两个额外的映射(一个带 Shift,一个不带 Shift)。通常,附加字符足以满足大多数用户的需求,因为它们通常是针对特定本地市场定制的。默认的 UK/Ireland 键盘布局具有爱尔兰盖尔语所需的字母 á é í ó ú,可以通过 AltGr 键与元音组合来访问。但是,它不提供苏格兰盖尔语所需的字母 à è ì ò ù。 按下某个键时,在按下下一个键之前,它不会产生任何可辨识的影响。死键通过充当序列的第一个字符来修改序列中的下一个键。在选择字符时,大多数系统会尝试选择一个死键,一个逻辑组件;这对于重音符号是合理的,也可以应用于其他符号。例如,重音键 (`) 通常是死键,因为它需要序列 ' + a 来生成字符 à。可以实现复合序列。例如,要添加双点(重音符号)," 似乎是一个自然的选择,但这个被广泛使用的键不能被制成死键。使用 AltGr 来修改它是一个解决方案;因此,AltGr + 2 a 得到 ä。一些组合不如它们的 compose-key 等效项清晰。例如,让我们比较一下 Compose + , + s 生成 ş (ChromeOS 采用 UK 扩展映射) 与 AltGr + = s。 您可能会想到 Alt 码或 Unicode 数字输入作为 compose 键,但它们使用无意义的数字而不是助记符作为选择器。 现代图形用户界面 (GUI) 字符选择器通常需要一种类似于 compose 序列的搜索功能,以便快速找到特定字符。 软件辅助1. X Window System 在 X 头文件中,Compose Key 被称为“Multi_key”。当按下 AltGr 后跟 ⇧ Shift 时,会按下称为“第四键盘级别修饰键”的新键。在 X org 上,默认的 Compose Key 是 ⇧ Shift+AltGr。通常的做法是使用一个键盘布局,其中 compose key 被映射到另一个键,例如右侧的 Ctrl 或 ⊞ Win,因为这会造成不便,尤其是对于没有 AltGr 的键盘。通常,桌面环境的设置包含此选项。由于 X 键盘驱动程序,用作 Compose 的键不能用作修饰键。现代平台支持许多 compose 序列。 2. Windows 一些 Microsoft Windows 程序,如 PuTTY,提供 compose keys。键盘快捷方式实用程序被广泛用于在每个软件上复制 compose key。也有许多开源实用程序(例如 WinCompose、AllChars、Compose-Keys 或 Compose)。有可安装的键盘布局(如 KbdEdit),它们将 compose key 分配给一个键,如 Ctrl 或 AltGr。它们通过输入具有许多附加符号的字母来工作,并利用死键链接功能,该功能得到了更广泛的利用。您也可以直接用 C 语言(编写 Windows 驱动程序的语言)制作这些键盘布局。然后可以使用免费的 Windows Driver Kit 来构建它们,并且可以使用免费的 Microsoft Keyboard Layout Creator 1.4 来打包它们。这两者都与最新版本的操作系统兼容。 3. macOS 尽管 macOS 的 Cocoa 文本输入系统默认支持输入各种重音和替代字符,但仍未提供真正的 compose-key 解决方案。Karabiner 软件与所有程序兼容,已被用于至少一种实现。此外,还部署了一些键盘布局(如“ABC - Extended”)来通过利用死键链接功能来实现 Compose。 4. Chrome OS ChromeOS 尽管比大多数竞争对手拥有更广泛的字形库,但 ChromeOS 并不像 Compose 概念那样提供如此明显的多键组合结构。为了在这个市场竞争,Google 发布了一个名为 ComposeKey 的附加组件。 5. DOS DOS 中的 Compose Key 支持取决于可加载的键盘驱动程序或正在运行的应用程序。例如,为了输入 Lotus Multi-Byte Character Set (LMBCS) 和 Lotus International Character Set (LICS) 中的各种特殊字符,Lotus 1-2-3 将 Alt+F1 实现为 compose key。 一些 Compose Key 组合
|
我们请求您订阅我们的新闻通讯以获取最新更新。