如何通过Emacs中的数字键入Unicode字符?


19

如何通过数字键入Unicode字符,例如在Emacs中0x2E3B输入Unicode字符U+2E3B(THREE-EM DASH)?

Answers:


19

在Emacs 23上,键入Ctrl + X 8 Enter,然后键入数字,然后按Enter。从Emacs和Unicode Tips中学到了这一点,后者也描述了其他方法(Ctrl + X 8 Enter也可以跟着Unicode名称)。

请注意,除非安装了Symbola或Everson Mono并将其中之一定义为Emacs所使用的字体,否则U + 2E38可能不会显示。可能还有其他包含该字符的字体,但是fileformat.info字体支持页面仅提及了这两种。


the¹表示链接:出于某种原因,我需要用十进制值键入一个字符,并且不想为十六进制重新计算所有字符。(我得到了Visual Studio的输出,并且出于怪异的原因使用了十进制表示法)在链接中提到了这种方式。
Hi-Angel

如果您需要在迷你缓冲区中键入字符,则此方法似乎不起作用(我的目标是进行全局替换)。我“尝试在minibuffer中使用minibuffer”。链接的页面似乎没有解决这种情况……
Silvio Levy

4

即使Cx 8方法不起作用(例如,在迷你缓冲区中插入字符),也可以使用以下方法(可在http://www.emacswiki.org/emacs/QuotedInsert找到)。如果您知道十六进制代码,请先将read-quoted-char-radix设置为16-例如,您可以在暂存缓冲区中键入(setq read-quoted-char-radix 16),将点放在右括号和击中Cx Ce。如果您知道十进制值,请使用10而不是16。如果您知道八进制值,则可以跳过此步骤。

然后,要实际插入字符,只需键入Cq,然后键入数字。(任何非数字字符都会终止该数字;如果运气不好,需要立即在该字符后加上一个数字,请使用空格终止该数字并在继续操作之前擦除该空格。)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.