【发布时间】:2011-07-28 20:01:09
【问题描述】:
有没有办法在 emacs 上放大和缩小(动态改变字体大小,相当流畅)?
【问题讨论】:
-
也适用于 emacs 24
标签: emacs
有没有办法在 emacs 上放大和缩小(动态改变字体大小,相当流畅)?
【问题讨论】:
标签: emacs
您经常需要更改字体大小,因为您要向他人展示某些内容。然后您可能希望所有窗口都放大(包括模式行)。为此,default-text-scale 很棒。
我是这样绑定的:
(key-seq-define-global "q-" 'default-text-scale-decrease)
(key-seq-define-global "q+" 'default-text-scale-increase)
(global-set-key (kbd "C-M-_") 'default-text-scale-decrease)
(global-set-key (kbd "C-M-+") 'default-text-scale-increase)
如需快速放大(16 倍),您可以使用:C-u C-u C-x C-+
要进入单窗口模式,比如组织演示:C-x 1
然后您可以撤消单窗口并返回到之前使用winner-undo 的任何布局:C-c <left>
与此相关,对于通过视频通话进行共享,最简单的方法可能是更改(降低)您的桌面分辨率。在 linux 上,我会在开始共享会话之前为此弹出 arandr。
【讨论】:
这个配置对我有用:
(global-set-key [C-wheel-up] 'text-scale-increase)
(global-set-key [C-wheel-down] 'text-scale-decrease)
【讨论】:
试试 C-x C-+ 和 C-x C--;即Control-x Control-Minus/Control-加号。
经过一次组合(Cx C-+ or Cx C--),连续 + 或 - 增加或减少文本比例,无需再次输入 Cx C-。
sawa 补充
我查看了分配给上述键的功能,发现它们是text-scale-increase 和text-scale-decrease。我将以下内容添加到我的配置文件中,以便我可以执行 Ctrl+Scroll 来放大/缩小。很有用。
(global-set-key [C-mouse-4] 'text-scale-increase)
(global-set-key [C-mouse-5] 'text-scale-decrease)
【讨论】:
(text-scale-set LEVEL)。例如,我默认使用它来减小 ibuffer 中的字体大小:(add-hook 'ibuffer-mode-hook 'my-ibuffer-mode-hook) (defun my-ibuffer-mode-hook () (text-scale-set -1))
(global-set-key (kbd "C-<wheel-up>") 'text-scale-increase)(global-set-key (kbd "C-<wheel-down>") 'text-scale-decrease)
minus必须来自打字机按键,而不是数字键盘。
user173973 的 -very nice- 答案是将函数绑定到非通用鼠标事件。也就是说比如在我的windows系统上,绑定命令是无效的。
要在 Windows(或可能在任何地方)上使用它,您可以使用这些通用绑定:
(global-set-key [C-mouse-wheel-up-event] 'text-scale-increase)
(global-set-key [C-mouse-wheel-down-event] 'text-scale-decrease)
【讨论】:
(setq w32-pass-extra-mouse-buttons-to-system t)。有任何想法吗? (我在 Windows 7 上。)
(kbd "<C-wheel-up>")。特别是用C-h k ctrl+scroll-up描述key。