gpt4 book ai didi

linux - 失去焦点时更改 Emacs 窗口外观

转载 作者:可可西里 更新时间:2023-11-01 11:47:38 25 4
gpt4 key购买 nike

当我编程时,我使用两个带有 Emacs 的屏幕,在每个窗口中拆分两个缓冲区,每次屏幕上总计有 4 个开源文件。

我用 C-x b 在缓冲区之间切换,用 Alt-TAB 在 Windows 之间切换。当我通过为 mode-linemode-line-inactive 定义不同的面来在它们之间切换时,我改变了缓冲区的外观。但是,当我通过 Alt-TAB 从 Emacs 窗口完全切换到另一个 Emacs 窗口时,如何使缓冲区失效?

我在带有 Gnome 2.32.1 的 Ubuntu 11.04 上使用 Emacs 23.2.1 可能也很重要。

PS:问题How to automatically save files on lose focus in Emacs追求不同的目标,但具有相同的原始事件“窗口失去焦点”。

最佳答案

这可能取决于您的窗口管理器以及它如何管理多个窗口或框架,用 emacs 的说法。下面的代码在 fvwm 中工作得很好,但在 gnome 中并不总是如此。

我将按键 C-o 映射到帧之间,当您想转到另一个帧时这会有所帮助,但 alt-tab 会带您在途中浏览许多多余的应用程序。

如果您正在运行带有两个框架的单个 emacs 实例,您可以使用如下内容:

(defun pgr-previous-frame ()
"go to the previous frame"
(interactive)
(pgr-switch-frame (previous-frame)))

(defun pgr-next-frame ()
"go to the next frame"
(interactive)
(pgr-switch-frame (next-frame)))

(defun pgr-switch-frame (frame)
"go to the specified frame and raise it"
;; reset the frame properties here
(select-frame frame)
(raise-frame frame)
;;change the display in some manner here
)

你也可以尝试添加一些建议来提升框架和降低框架没试过但值得一试。

关于linux - 失去焦点时更改 Emacs 窗口外观,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7271312/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com