15

notepad++ 允许我在按住Ctrl键并将鼠标中滚动按钮向前旋转时增加字体大小。

同样,当我按住Ctrl鼠标中键并向后旋转时,喜欢的尺寸会减小。

如何使用 Emacs 获得相同的效果?

4

5 回答 5

22

使用 emacs23,您可以在 .emacs.el 中添加以下行:

(global-set-key (kbd "<C-mouse-4>") 'text-scale-decrease)
(global-set-key (kbd "<C-mouse-5>") 'text-scale-increase)
于 2010-01-19T09:03:55.087 回答
8

AlexCombas 的回答代码:

(defun font-big ()
 (交互的)
 (set-face-attribute 'default nil :height
  (+ (face-attribute 'default :height) 10)))

(defun font-small ()
 (交互的)
 (set-face-attribute 'default nil :height
  (- (face-attribute 'default :height) 10)))

(global-set-key (kbd "<C-wheel-down>") 'font-small)
(global-set-key (kbd "<C-wheel-up>") 'font-big)

编辑:用于最小和最大使用

(defun font-big ()
 (交互的)
 (set-face-attribute 'default nil :height
  (最小 720
   (+ (face-attribute 'default :height) 10))))

(defun font-small ()
 (交互的)
 (set-face-attribute 'default nil :height
  (最多 80
   (- (face-attribute 'default :height) 10))))
于 2010-01-19T09:19:28.017 回答
2

试试这个:

(global-set-key (kbd "<C-mouse-4>") (lambda () (interactive) (text-scale-decrease 1)))
(global-set-key (kbd "<C-mouse-5>") (lambda () (interactive) (text-scale-increase 1)))
于 2010-01-19T17:43:09.173 回答
1

理论上我可以给你答案,但是比我更熟练的人将不得不编写 lisp 我只是有点忙 atm 来为自己弄清楚。

如果明天之前没有人回应,我会去看看书并弄清楚。

需要做什么:编写一个函数(font-big)来执行此操作:

  1. 字体默认大小 = 字体默认大小+1`

  2. 然后重新评估所有打开的缓冲区。

然后将函数绑定到一个键(define-key map [C-wheel-up] 'font-big)

然后对 (font-small) 执行相同的操作。

我希望我的想法至少能得到部分学分:)

于 2010-01-19T08:39:36.533 回答
1

缩放框架是你想要的。我一直在做你描述的事情。加载后zoom-frm.el,添加一些绑定,例如:

    (global-set-key [S-mouse-1] '放大)
    (global-set-key [CS-mouse-1] '缩小)
    (global-set-key (vector (list 'control mouse-wheel-down-event)) '放大)
    (global-set-key (vector (list 'control mouse-wheel-up-event)) '缩小)

另见:http ://www.emacswiki.org/emacs/SetFonts#ChangingFontSize

于 2011-08-22T00:03:36.603 回答