【问题标题】:How do I select a specific font for display for a particular set of Unicode codepoints in Emacs?如何为 Emacs 中的一组特定 Unicode 代码点选择特定字体显示?
【发布时间】:2013-07-04 03:51:48
【问题描述】:

我正在使用: GNU Emacs 24.3.50.1 (i386-apple-darwin11.4.2, NS apple-appkit-1138.51) of 2013-05-27 on Celestra.local

我可以显示中文字符,但它们使用“宋”字体,其字体难以阅读(类似于衬线字体)。 如何让 Emacs 选择特定的面来显示中文字符? 所有 ASCII 字符都在 Inconsolata 中显示。

我查看了EmacsWiki:FontSets 并将其添加到我的 .emacs 文件中:

(set-fontset-font "fontset-standard"
                  (cons (decode-char 'ucs #x4E00)
                        (decode-char 'ucs #x9FFF))
                  "-*-SimHei-*-*-*-*-14-*-*-*-*-*-iso10646-1")

但我的汉字仍然以默认的备用字体显示。

【问题讨论】:

  • 我会尝试M-x list-faces-display 看看是否有任何字体看起来像您不满意的字体。一旦你知道了人脸/变量的名字,你就可以在你的 .emacs 文件中把它改成你想要的任何东西。
  • @lawlist 这行得通,但它没有显示我想要的脚本('han)中的面孔。 :(

标签: emacs fonts


【解决方案1】:

尝试使用“fontset-default”而不是“fontset-standard”,因为 fontset-default 将是所有未指定更具体内容的字体集的后备。

我也会使用脚本名称而不是字符范围,但两者都可以:

(set-fontset-font "fontset-default" 'han "SimHei-14")

您可能需要添加其他脚本,例如 'cjk-misc 以实现全面覆盖。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-08
    • 2019-07-14
    • 1970-01-01
    相关资源
    最近更新 更多