Linux 如何让Emacs从文件中加载字体?

Linux 如何让Emacs从文件中加载字体?,linux,emacs,ide,fonts,customization,Linux,Emacs,Ide,Fonts,Customization,为了使emacs设置更具可移植性,我希望能够通过指定文件而不是字体名称来设置当前字体,即“Load~/config/myfont.ttf和use size 12”。在我的.emacs中有这样做的方法吗?我找到的所有说明都假设系统上已经安装了该字体。我在Linux上使用XFT支持,所以特定于Linux的黑客攻击是可以的,但我更喜欢能在所有目标上工作的东西 更新:要清楚,我使用的字体在Windows/OS X/Linux上不是标准字体。我不只是想根据平台设置不同的字体,而是想指定我拥有的特定字体文件

为了使emacs设置更具可移植性,我希望能够通过指定文件而不是字体名称来设置当前字体,即“Load~/config/myfont.ttf和use size 12”。在我的.emacs中有这样做的方法吗?我找到的所有说明都假设系统上已经安装了该字体。我在Linux上使用XFT支持,所以特定于Linux的黑客攻击是可以的,但我更喜欢能在所有目标上工作的东西


更新:要清楚,我使用的字体在Windows/OS X/Linux上不是标准字体。我不只是想根据平台设置不同的字体,而是想指定我拥有的特定字体文件(TTF在Windows和Linux上工作,如果不是在Mac上,我将获得该文件的另一个版本,但我仍然希望通过文件而不是名称来指定字体)。

Emacs在每个平台上使用特定于平台的小部件,因此,您应该使用系统例程来设置具体的字体。 我在不同的文件中有依赖于系统的配置,这些文件是从.emacs加载的

(load (concat "~/.emacs.d/rc-" system-type))

不幸的是,你不能

不同平台上的Emacs使用不同的窗口工具箱,所有这些工具箱都负责它的字体处理。我不相信在任何平台上都可以在Emacs中指定字体文件名,它就是不能这样工作

至于如何找到字体:

  • 在Linux上,您可以使用XFT对特定于用户的字体配置文件的支持,该文件通常是
    ~/.fonts.conf
    (但要确保选中
    /etc/fonts/font.conf
    )来添加您放置字体的任何目录

  • 在Mac电脑上,您可以将字体添加到
    ~/Library/Fonts
    。顺便说一句,TTF在Mac电脑上运行良好

  • 在Windows上,我认为您只需将其添加到系统字体目录中即可

从那里,您可以告诉Emacs(通过自定义或不自定义)使用您的字体。您会发现每个平台上的命名方案都不同(不确定Windows是什么样子),但customize应该可以帮助您解决这一问题——如果需要,只需为每台机器保留一个单独的自定义文件即可


…因此,基本上,您的便携式Emacs设置必须包含的不仅仅是一个Emacs配置文件(考虑到您随身携带的字体文件,它已经包含了)。

感谢您的提示,但这并不是我想要的,请参阅上面的编辑。我不确定是否可能,因为Emacs不能直接与字体一起使用