我有一个Emacs扩展,创建一个名为的缓冲区*erl-output*.此缓冲区仅fundamental-mode在默认情况下创建.有没有办法自动启用compilation-minor-mode该缓冲区?
Dav*_*ebb 20
要自动更改主要模式,您可以将以下内容添加到.emacs文件中:
(add-to-list 'auto-mode-alist '("^\\*erl-output\\*$" . my-major-mode))
Run Code Online (Sandbox Code Playgroud)
这对你不起作用; 这是主要模式选择,你是在选择次要模式之后.
相反,你可以尝试一个钩子.手册说:
钩子是一个Lisp变量,它包含一个函数列表,可以在一些明确定义的场合调用.
因此,您应该能够编写一个在需要时设置次要模式的函数.查看标准挂钩列表我认为你应该尝试temp-buffer-setup-hook或temp-buffer-show-hook.
您必须编写一个函数来检查缓冲区名称并在需要时设置模式,并使用以下内容将其添加到钩子.emacs:
(add-hook 'temp-buffer-setup-hook 'my-func-to-set-mode)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5729 次 |
| 最近记录: |