我还想在.emacs文件中保存字体大小。


当前回答

Aquamacs:

(set-face-attribute 'default nil :font "Monaco-16" )

从Emacs Wiki全局更改默认字体,它说你可以使用以下任何一种:

(set-face-attribute 'default nil :font FONT )

(set-frame-font FONT nil t)

其中FONT是“Monaco-16”之类的东西,例如:

(set-face-attribute 'default nil :font "Monaco-16" )

在wiki上的第一个建议中有一个额外的右括号,这导致了启动时的错误。我终于注意到这个额外的右括号,随后我在维基上更正了这个建议。这两个建议都对我有用。

其他回答

如果你喜欢控制台emacs (emacs -nw),现代vterm实现(如gnome-terminal)往往有更好的字体支持。另外,如果您习惯了这一点,就可以使用tmux,这样即使没有X,也可以在远程服务器上使用完整的环境。

下面是一个代码片段,可以让你直接使用交互函数指定全局字体大小:

(defun set-font-size ()
    "Set the font size."
  (interactive)
  (set-face-attribute
   'default nil :height
   (string-to-number
    (read-string "Font size: " (number-to-string (face-attribute 'default :height nil))))))

在AquaMacs CMD +和CMD -中调整当前缓冲区的字体大小。

zoom.cfg和global-zoom.cfg提供字体大小更改绑定(来自EmacsWiki)

C——或C-mousewheel-up:增大字体大小。 C-+或C-鼠标滚轮向下:减小字体大小。 C-0将字体大小恢复为默认值。

这里有一个交互调整字体高度的选项,一次一点:

;; font sizes
(global-set-key (kbd "s-=")
                (lambda ()
                  (interactive)
                  (let ((old-face-attribute (face-attribute 'default :height)))
                    (set-face-attribute 'default nil :height (+ old-face-attribute 10)))))

(global-set-key (kbd "s--")
                (lambda ()
                  (interactive)
                  (let ((old-face-attribute (face-attribute 'default :height)))
                    (set-face-attribute 'default nil :height (- old-face-attribute 10)))))

当您想要调整所有缓冲区中的文本大小时,这是可取的。我不喜欢使用文本比例增加和文本比例减少的解决方案,因为排水沟中的行号之后会被切断。