Gnu emacs窗口标题默认

时间:2012-03-20 14:02:36

标签: windows emacs titlebar custom-titlebar

我在Windows XP中使用Gnu emacs,默认窗口标题为“emacs @ ACH1797VM2”,而不是缓冲区标题,这就是我想要的,据我所知,这是正确的默认行为。 / p>

在阅读https://stackoverflow.com/a/2338352/1001165后,我将以下行放在〜/ .emacs文件的末尾,但行为没有变化。

(setq frame-title-format "%b - emacs")

我可以用

更改窗口标题
M-x set-frame-name NewName RET

但我希望它能自动更改以匹配缓冲区名称。

4 个答案:

答案 0 :(得分:4)

我说这条线是正确的。你可以复制&将表达式粘贴到*scratch*缓冲区并点击 C-J 。如果窗口标题发生变化,那么当您在.init.el中添加该行时,它也应该更改。还有可能你的init文件不在正确的位置或者它没有正确命名...如果我在Windows中正确回想起它不是以点开头,而是用下划线。

答案 1 :(得分:2)

您可以尝试此操作,添加到您的.emacs:

(setq frame-title-format
      '((:eval (if (buffer-file-name)
                   (abbreviate-file-name (buffer-file-name))
                 "%b"))
        (:eval (if (buffer-modified-p)
                   " •"))
        " Emacs")
      )

%b - 打印缓冲区名称。您可以在[1]中看到更多选项。 此外,如果要修改任何缓冲区,则会显示“•”以表示您正在修改。

希望有所帮助。

[1]。 http://www.emacswiki.org/emacs/FrameTitle

答案 2 :(得分:1)

这就是我的.emacs里面的东西。不确定它有什么影响。

(setq-default frame-title-format '(buffer-file-name "%f" "%b")) ; I already know this is Emacs

答案 3 :(得分:1)

我认为这意味着窗口顶部的标题,而不是Emacs内灰色栏中的位。更改此选项非常有用,这样您可以在 Alt + TAB 或任务栏中区分不同的窗口。

我找到了这个,这对我来说可以显示光标聚焦的缓冲区的名称:

(setq frame-title-format "%b - Emacs")

Link