1

我正在修改旧的 Emacs / Gnus 配置,该配置可以追溯到 unicode Emacs(21.3 或 22)之前。在这个配置中,我使用了一些 unicode 字符来显示 usenet 线程:

  (setq gnus-sum-thread-tree-root "\x490a4 ")     ; "> "
  (setq gnus-sum-thread-tree-false-root "\x490a4 ") ; "> "
  (setq gnus-sum-thread-tree-indent " ") ; "  "
  (setq gnus-sum-thread-tree-single-indent "") ; ""
  (setq gnus-sum-thread-tree-leaf-with-other "\x4903c\x49020\x4904c\x490f9 ") ; "+-> "
  (setq gnus-sum-thread-tree-vertical "\x49022 ") ; "| "
  (setq gnus-sum-thread-tree-single-leaf "\x490b0\x49020\x490f9 "))   ; "\\-> "

但现在使用 Emacs 23.2.1,我看到的是空方块而不是弯曲的箭头。我怀疑它可能是字体集或与单字节/多字节相关的转义问题。

要排除转义问题或解决它,如何检索 unicode 字符以使用\u1234转义而不是\x12345?谢谢。

编辑:感谢 Emacs-22,我能够将这些字符插入缓冲区并使用C-uC-x=.

对应的是

(setq gnus-sum-thread-tree-root "\u2564 "
        gnus-sum-thread-tree-false-root "\u2564 "
        gnus-sum-thread-tree-leaf-with-other "\u251c\u2500\u252c\25b9 "
        gnus-sum-thread-tree-vertical "\u2502 "
        gnus-sum-thread-tree-single-leaf "\u2570\u2500\u25b9 "))

...但是显示效果不如选择那些 unicode 字符时那么好。它在另一个系统上,我想字体更好地显示它们。

4

2 回答 2

1

我建议你启动一个旧的 Emacs (Emacs-22),让它显示那些字符串,这样你就可以看到那些漂亮的弯曲箭头,然后用鼠标复制和粘贴它们(不需要使用\uNNN符号)。

于 2013-10-03T04:15:10.600 回答
1

理论上(decode-coding-string "\x490a4 " 'emacs-mule)应该做你想做的,但它似乎无法识别那个字符,可能是因为它是从 MULE 的扩展来支持更多的 Unicode 字符。

我认为最简单的解决方案是在视觉上找到您想要的箭头,并用它们的 Unicode 代码点替换这些代码。有关潜在候选人的列表,请参阅Wikipedia 中的箭头(Unicode 块) 。

于 2013-10-03T04:15:33.693 回答