43.16 X11 键符号操作

如需定义系统专属的 X11 键符号,可设置变量 system-key-alist

Variable: system-key-alist

该变量的值应为一个关联表,每个元素对应一个系统专属键符号。元素格式为 (code . symbol),其中 code 是数字类型的键符号编码(不含厂商专属位, −2**28), symbol 为该功能键的名称。

例如 (168 . mute-acute) 定义了一个系统专属按键(HP X 服务器使用),其数字编码为 −2**28 + 168。

关联表中无需刻意排除其他 X 服务器的键符号;只要不与当前正在使用的 X 服务器按键冲突,便不会产生问题。

该变量始终对当前终端局部有效,不能设为缓冲区局部变量。See 多终端

通过设置以下变量,可指定 Emacs 中 Control、Meta、Alt、Hyper、Super 修饰键对应的键符号:

Variable: x-ctrl-keysym
Variable: x-alt-keysym
Variable: x-meta-keysym
Variable: x-hyper-keysym
Variable: x-super-keysym

分别对应 Control、Alt、Meta、Hyper、Super 修饰键所代表的键符号名称。 例如,以下代码可在 Emacs 内交换 Meta 与 Alt 修饰键:

(setq x-alt-keysym 'meta)
(setq x-meta-keysym 'alt)