绑定键以增加/减少emacs中的字体大小

时间:2012-12-23 12:20:29

标签: emacs elisp font-size

在我的终端(我有terminator)我可以使用组合键 Ctrl + Ctrl - 增加/减少字体大小。

在emacs中,我可以执行以下操作来设置font-height:

(set-face-attribute 'default nil :height 70)

但我不知道如何增加/减少它。我怎样才能轻松将其添加到我的emacs配置中?

5 个答案:

答案 0 :(得分:110)

我认为您需要C-x C-+C-x C--

答案 1 :(得分:15)

我建议:

(global-set-key (kbd "C-+") 'text-scale-increase)
(global-set-key (kbd "C--") 'text-scale-decrease)

虽然@Stefan提到的默认键绑定完成了这项工作,但我也希望拥有更常见的键绑定。顺便说一句, C-x C - = 也会增加字体大小, C-x C-0 会恢复默认字体大小。

答案 2 :(得分:13)

C-x C-+C-x C--仅为您提供答案的 部分 :缩放缓冲区的文字。

您可以更改给定 框架 的字体大小(在该框架中的所有窗口/缓冲区中),或者您可以更改(明显)字体大小给定 缓冲区 (跨所有窗口/框架)。 后者称为文本缩放,它是香草Emacs C-x C-+C-x C--提供的。

zoom-frm.el使用相同的命令为您提供两种缩放。将相同的命令zoom-in/out绑定到C-x C--C-x C-+。它可以放大或缩小帧或缓冲区。简单前缀arg在缩放帧和缩放缓冲区之间切换。将它绑定到鼠标键(我使用S-mouse-1(in)和C-S-mouse-1(out)和鼠标滚轮(in / out)。

face-remap+.el修复了文本缩放,使窗口大小缩小或增大,以适应不断变化的文本大小,从而释放屏幕空间。

This EmacsWiki page提供了有关此常见问题的详细信息。

答案 3 :(得分:6)

按下控制键更改鼠标滚轮:

(global-set-key [C-mouse-4] '(lambda () (interactive) (text-scale-increase 1)))
(global-set-key [C-mouse-5] '(lambda () (interactive) (text-scale-decrease 1)))

这没关系,但它是缓冲本地的。以下代码使用控件+鼠标滚轮/触控板更改所有缓冲区的帧字体高度:

(defun change-font-height (delta)
  (set-face-attribute 'default 
                      (selected-frame)
                      :height (+ (face-attribute 'default :height) delta)))
(global-set-key [C-mouse-4] '(lambda () (interactive) (change-font-height +4)))
(global-set-key [C-mouse-5] '(lambda () (interactive) (change-font-height -4)))

答案 4 :(得分:5)

检查purcell的.emacs.d及其字体utils