是否有一种简单的方法可以更改活动窗口的背景颜色,以便轻松区分哪个窗口具有输入?高亮显示当前活动窗口
我知道hiwin模式(https://github.com/masutaka/hiwin-mode)。但是这种模式在掌舵时会遇到问题。
我也知道颜色主题缓冲区本地(https://github.com/vic/color-theme-buffer-local),我想知道是否可以定制做我想做的。
是否有一种简单的方法可以更改活动窗口的背景颜色,以便轻松区分哪个窗口具有输入?高亮显示当前活动窗口
我知道hiwin模式(https://github.com/masutaka/hiwin-mode)。但是这种模式在掌舵时会遇到问题。
我也知道颜色主题缓冲区本地(https://github.com/vic/color-theme-buffer-local),我想知道是否可以定制做我想做的。
你可能想看看auto-dim-other-buffers.el
,可从MELPA。
的
auto-dim-other-buffers-mode
是一个全球性的次要模式这使得 非当前缓冲器不太突出使之更清楚哪个窗口 具有焦点。安装模式的优选方式是通过从 MELPA安装一个包:
M-x package-install RET auto-dim-other-buffers RET
一旦安装,模式可以在(全局)被开启以:
M-x auto-dim-other-buffers-mode RET
为了使每次Emacs启动时启用该模式,将以下内容添加到Emacs初始化文件(
~/.emacs
或~/.emacs.d/init.el
) :(add-hook 'after-init-hook (lambda() (when (fboundp 'auto-dim-other-buffers-mode) (auto-dim-other-buffers-mode t))))
配置缓存如何暗淡的样子,定制
auto-dim-other-buffers-face
。M-x customize-face RET auto-dim-other-buffers-face RET
的
auto-dim-other-buffers-mode
是一个全球性的次要模式这使得 非当前缓冲器不太突出使之更清楚哪个窗口 具有聚焦:这可以通过以下方式实现。
对于给定的活动窗口,所有其他窗口不显示相同的缓冲将被设置为自定义背景。即,活动窗口和显示相同缓冲区的其他窗口将具有不同于其余窗口的背景颜色。我相信最后一部分是您正在寻找的具体行为,根据您对已接受答案的评论。
“非常感谢你,这是非常接近我想要的。除 事实,有两个窗口打开同一个缓冲区导致两个 窗口被标记为‘无效’。这不是超级很重要,但是 有解决这个问题的简单方法吗?“
(defun highlight-selected-window()
"Highlight selected window with a different background color."
(walk-windows (lambda (w)
(unless (eq w (selected-window))
(with-current-buffer (window-buffer w)
(buffer-face-set '(:background "#111"))))))
(buffer-face-set 'default))
(add-hook 'buffer-list-update-hook 'highlight-selected-window)
更改背景颜色(“#111”)以适应您的口味。
这是一个非常好的模式。谢谢! – Tohiko