Emacs字体设置在新框架中不起作用


12

我正在尝试使emacs适应。我安装了emacs入门套件。现在,我正在尝试自定义字体。在~/.emacs.d/init.el我做到了(set-frame-font "-adobe-courier-medium-r-normal--12-120-75-75-m-70-iso8859-1")。直到我做完,一切都很好C-x 5 2。新框架将使用我自定义之前在系统上的字体创建。如何覆盖此行为以仅使用在init.el中指定的字体?我是否应该~/.emacs为此类设置创建文件(现在不存在)?

Answers:


20

set-frame-font设置当前框架的字体。要为所有的帧的默认字体,包括在以下行~/.emacs.d/init.el,设置font参数default-frame-alist

(add-to-list 'default-frame-alist
             '(font . "-adobe-courier-medium-r-normal--12-120-75-75-m-70-iso8859-1"))

~/.emacs是Emacs的配置文件的传统位置。~/.emacs.d/init.el是具有完全相同角色的备用名称。使用任何一个(但不能同时使用)。

对于X显示(即在使用X服务器的Unix或非Unix系统上),您还可以通过X resources设置字体。在许多系统上,~/.Xresources登录时会被读取,您可以在其中写入:

Emacs.font: -adobe-courier-medium-r-normal--12-120-75-75-m-70-iso8859-1


是的,这终于是一个可行的答案。设置默认字体...?不,那太简单了!
山姆·沃特金斯

类型M-x customize-option,输入Customize variable: default-frame-alist,点击INS,进入Parameter: fontValue: "-outline-Droid Sans Mono-normal-normal-normal-mono-13-*-*-*-c-*-iso8859-1"(注意周围"的字体),点击StateSave for Future Sessions
kwarnke

6

set-frame-font接受两个可选参数:KEEP-SIZEFRAMES。如果 FRAMES将其设置为非nil值,则该字体将应用于以后的帧。

(set-frame-font "Inconsolata-13" t t)

我不确定情况会持续多久,但是从Emacs 24.4.1开始,这是真的。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.