哪种 Unicode 字体最适合在 Emacs 下使用字体锁定来显示数学符号?

哪种 Unicode 字体最适合在 Emacs 下使用字体锁定来显示数学符号?

我最近在 MS Windows 上安装了 Emacs + AucTeX,使用的是此处提供的预配置二进制文件CTAN 网页并且一切都与最新的 MikTeX 安装和 Ghostscript 8 配合得很好(两者都需要单独安装)。这是迄今为止我发现的在 Windows 下安装和运行所有这些程序的最简单的方法。

Emacs 的许多有用功能之一是“字体锁定”,它允许文档中的某些字符序列在屏幕上显示为用户指定的 Unicode 符号。例如,输入序列在文档中可以显示(使用字体锁定机制)为希腊字母形式α如果此符号在 Emacs 下用于此目的的字体中可用,则显示在屏幕上(但不存储在磁盘上的文件中)。当无法直接使用 Unicode 文档编码格式来存储磁盘上的文件(例如出于兼容性原因)但仍希望在 Emacs 编辑器窗口中显示文档时看到与各种 LaTeX 符号相对应的 Unicode 字形时,此功能非常有用。

在 Emacs 下,一个较旧的软件包可以实现序列名称在屏幕上即时转换为相应的 Unicode 字形,它叫做 x-symbol。一个较新的软件包(可从这个 reddit 获得)) 似乎可以完成同样的事情,被称为latex-pretty-symbols.el,其与上述安装配合得很好。

不幸的是,Windows 下可用的许多 Unicode 字体似乎只支持人们日常使用的一小部分 LaTeX 数学符号,包括 Xah Lee 在他的Unicode emacs 博客宾夕法尼亚州立大学网页

问题:

Emacs(MS Windows)下有哪些包含所有常用 LaTeX 数学符号的 Unicode 字体选项?

人们可能会认为,Computer Modern 字体本身可能以某种形式(编码 + 格式)存在,从而允许它们在 Emacs 内部使用,如果是这样,是否有人成功地将它们用于此目的?

STIX 字体

Cambria Math 字体可以在 Emacs 中使用,但在数学块中输入下标和上标时,它们无法正确显示。在使用 Cambria Math 时,是否可以以某种方式配置 AucTeX 以视觉上可接受的方式垂直放置下标/上标,或者 Microsoft 的这种相对较新的字体的格式是否与 Emacs + AucTeX 目前在 Windows 下可以处理的格式不兼容?

编辑:关于此的信息有助于解释为什么 Emacs 在渲染 Cambria Math 字体时遇到困难。显然,微软正在使用 OpenType 格式的扩展来处理数学符号,而 Emacs(以及 Word 2000 等各种旧版应用程序)无法正确处理这些符号。Murray Sargent 在他的博客

答案1

正如 egreg 所建议的,我会将我的评论转化为对您问题的至少部分答案:

人们可能会认为计算机现代字体它们本身可能以某种形式(编码 + 格式)存在,允许它们在 Emacs 内部使用,如果是这样,是否有人成功地将它们用于此目的?

您可以使用CM-统一码字体,可在 Windows 操作系统级别安装,因此可从使用系统字体的所有应用程序使用。我在 Inkscape、Word 和 PowerPoint 中使用这些字体。

引自CM-Unicode 主页

计算机现代 Unicode 字体从 metafont 源转换而来 使用跟踪使用 autotrace 后端和 fontforge(以前的 pfaedit)。它们的主要目的是创建用于支持多种语言的 X 应用程序的免费优质字体。目前,字体包含来自 Latin1(Metafont ec、tc、vnr)、西里尔文(lh)和希腊文(cbgreek 可用时)代码集和 IPA 扩展(来自 tipa)的字形。

您还询问STIX 字体。这些字体也有 otf 格式,所以我认为在系统级别安装这些字体应该很容易。

答案2

截至 2021 年,任何 OpenType 数学字体应该可以工作。新版 Computer Modern Math 是 Computer Modern 中 Unicode 覆盖范围最全面的版本。

DejaVu Sans Mono 是一种免费的固定宽度字体,对 Unicode 数学符号的覆盖范围很广。

答案3

我偏爱 IsabelleText 字体,根据自述

使用 FontForge 组装(http://fontforge.sourceforge.net),从现有(免费)字体中组成字形:Bluesky TeX 字体(缩放 222%)和 Bitstream Vera Mono,并从 DejaVu Sans Mono 和 DejaVu Sans 中添加了一些内容。

它可作为.ttf 这里

答案4

我建议你尝试一下Symbola可以从中获取的字体本网站. 检查一下pdf 文件字体提供的符号。

Emacs 默认有此字体,因此它不必搜索所有已安装的字体来查找字形。此搜索过程会显著降低 Emacs 的速度。

相关内容