Emacs:用于在OSX中显示unicode字符的字体设置

Gen*_*cos 7 emacs fonts osx-lion

我正在尝试显示特殊的unicode字符,特别是emacs中的数学运算符.特别:

             position: 283 of 317 (89%), column: 0
            character:  (displayed as ) (codepoint 120046, #o352356, #x1d4ee)
    preferred charset: unicode (Unicode (ISO10646))
code point in charset: 0x1D4EE
               syntax: w    which means: word
             category: .:Base, L:Left-to-right (strong)
          buffer code: #xF0 #x9D #x93 #xAE
            file code: #xF0 #x9D #x93 #xAE
               (encoded by coding system utf-8-unix)
              display: no font available
         Unicode data:
                 Name: MATHEMATICAL BOLD SCRIPT SMALL E
             Category: Letter, Lowercase
      Combining class: Ll
        Bidi category: Ll
        Decomposition: font e

Character code properties: customize what to show
  name: MATHEMATICAL BOLD SCRIPT SMALL E
  general-category: Ll (Letter, Lowercase)
  decomposition: (font 101) (font 'e')

There are text properties here:
  fontified            t
Run Code Online (Sandbox Code Playgroud)

我正在使用GNU Emacs 24最近的夜间二进制文件.上面的文本在我的浏览器和TextEdit中显示正常但是,在emacs中查看时,特殊字符显示为空.

我从旧的Emacs 22 手册中读到了这一点:"字体集不一定为所有字符代码指定字体.如果字体集指定某个字符没有字体,或者它指定了系统中不存在的字体,那么它无法显示该字符.它将显示一个空框." - 这是我观察到的确切行为

似乎我可能需要构建一个字体集才能显示这样的任意字符(从Xdefaults或Xresources文件开始).

如何识别我需要在字体集中包含哪些字体系列来显示数学运算符(大多数在线示例指的是拉丁语,中文等语言)?我甚至找不到.Xdefault或.Xresource文件的任何示例.

我是在正确的轨道上吗?有没有更容易/更明显的方法来做到这一点?

Bar*_*oom 5

我也有同样的问题,而且也没有通用的解决方案。这是我修复单个字符(或可能是一个范围)的方法,假设您的字符位于缓冲区中并且没有显示。

一些实验表明 Menlo 是一个有用的字符源,例如 FreeSerif。

  1. 将光标置于未显示的字符之前。

  2. mx 描述字符。这为您提供了有关该字符的大量信息,包括“字符集中的代码点:0x2055”形式的行。

    1. 在 .emacs 或相关文件中的某个位置,使用此函数。它可以通过从 FreeSerif 系列或其他东西中获取字符来修复整个范围的字符,但除了几个字符之外,我没有什么好的选择。
    (defun bbextra-fix-fontset-font (从&可选到系列)
      “让 FROM 到 TO 的角色都来自家庭。  
    TO 的默认值为 FROM,FAMILY 的默认值为 FreeSerif(其中
    似乎有一些角色)”
     (set-fontset-font t (cons from (或 to from))
                       (字体规格:系列(或系列“FreeSerif”))))

    ;; 这是我已经修复的角色。  
    (bbextra-fix-fontset-font #x2042)
    (bbextra-fix-fontset-font #x2023)
    (bbextra-fix-fontset-font #x203D)
    (bbextra-fix-fontset-font #x2055)


     ;这些来自门洛
     (bbextra-fix-fontset-font #x2620 #x2620“门洛”); 骷髅和交叉骨
     (bbextra-fix-fontset-font #x266C #x266C“门洛”); 16分音符
     (bbextra-fix-fontset-font #x2695 #x2695“门洛”); 阿斯克勒庇翁
     (bbextra-fix-fontset-font #x2624 #x2624“门洛”); 杖


Mic*_*ish 1

MacOS emacs 存在一个已知错误,显示的字符超出了 BMP 范围。例如,请参阅我在Emacs bugs上的错误报告。

\n

报告此错误后,我收到一封电子邮件建议使用\xe2\x80\x9cMac port\xe2\x80\x9d 版本的 emacs。这显然显示非 BMP 字符。

\n

该错误随后在 24.4 及更高版本中得到修复

\n