如何更改特定基本模式缓冲区的变量

Mor*_*kus 5 emacs defadvice advising-functions

目标:我希望show-trailing-whitespace为所有缓冲区启用一些保存.构成问题的例外情况*Shell Command Output*及其表亲*Async Shell Command*.

我经常show-trailing-whitespace定制到t.因此它在所有新缓冲区中都是活动的.

我还希望关闭某些缓冲区,其中最重要的是缓冲区*Shell Command Output*.这给我带来了一个问题:

  • 输出缓冲区不使用特殊模式; 它还在fundamental-mode.没有fundamental-mode-hook我可以将此设置挂钩.
  • 还有就是after-major-mode-change-hook当主要的模式改为其上运行fundamental-mode,但缓冲在该模式启动,因此这个钩子无法运行.
  • 似乎没有办法融入get-buffer-create.

我知道我可以随时advise使用get-buffer-create这个特定示例的函数,但我尽量避免这种情况.

任何提示?

Ste*_*fan 2

您最好从另一面看问题,并且只在您希望看到尾随空格的模式下设置 var。

但我认为你有一个很好的观点:这些 shell 输出缓冲区不应该使用fundamental-mode. 可能是时候了M-x report-emacs-bug