【问题标题】:Finding the Unicode codepoint of a character in GNU Emacs在 GNU Emacs 中查找字符的 Unicode 代码点
【发布时间】:2010-09-19 03:55:03
【问题描述】:

在 XEmacs 中,这是通过在字符上调用函数 char-to-ucs 来完成的。 GNU Emacs 似乎没有这个功能。在 GNU Emacs 中,字符似乎是普通的整数。在拉丁字符上运行 C-x = 表明 Emacs 代码点与对应字符的 Unicode 代码点不同。如何在 GNU Emacs 中找到字符的 Unicode 代码点?

【问题讨论】:

    标签: emacs unicode


    【解决方案1】:

    感谢您的快速回答。我查看了 describe-char 的源代码,发现以下 sn-p 解决了我的问题。我在 XEmacs 21.4.13 Mule 和 GNU Emacs 22.1.1 中都对其进行了测试,它似乎可以工作。

    (or (get-char-property (point) 'untranslated-utf-8)
        (encode-char (char-after) 'ucs))
    

    【讨论】:

      【解决方案2】:

      在现代 Emacs 中,M-x describe-char 会告诉你当前的字符。
      一个例子:

        character: ¢ (2210, #o4242, #x8a2, U+00A2)
          charset: latin-iso8859-1
               (Right-Hand Part of Latin Alphabet 1 (ISO/IEC 8859-1): ISO-IR-100.)
       code point: #x22
           syntax: w  which means: word
         category: l:Latin
      buffer code: #x81 #xA2
        file code: #xC2 #xA2 (encoded by coding system utf-8)
          display: by this font (glyph code)
           -apple-monaco-medium-r-normal--12-120-72-72-m-120-mac-roman (#xA2)
      

      注意第一部分的 U+00A2,它给出了字符的 Unicode 代码点。

      【讨论】:

      • describe-char 在 Emacs 23 中绑定到 C-x =。将光标(也称为“点”)放在 char 上并转到 C-u C-x =
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-07-04
      • 1970-01-01
      • 2021-11-08
      • 2016-12-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多