启用 global-auto-revert-mode 是使用其他工具进行开发/调试的绝佳方式。对磁盘上的文件所做的更改被镜像回相应的 emacs 缓冲区。
dired-auto-revert-buffer 为 dired 缓冲区提供了相同的功能,但如果启用了恢复 dired 缓冲区,则无法使用递归目录。他们需要很长时间才能重新加载。

如何为既没有运行插入( dired-auto-revert-buffer )也没有运行,尤其是递归插入的 dired 缓冲区启用 dired-maybe-insert-subdir

最佳答案

好问题。也许其他人会有更好的主意,但据我所知,您需要将 dired-auto-revert-buffer 设置为一个函数(而不是 t ),该函数仅在没有插入子目录时才返回非 nil。

这应该可以解决问题:

(setq dired-auto-revert-buffer  (lambda (_dir) (null (cdr dired-subdir-alist))))

但请记住, dired-auto-revert-buffer 仅在您“重新访问”现有 Dired 缓冲区时才有效。例如,仅重新选择其窗口或使其缓冲区成为当前状态是不够的。如果您使用 C-x d 重新访问它,那么如果它没有插入子目录,它将自动恢复。

关于emacs - 如何仅为没有插入子目录的 Dired 缓冲区启用 `dired-auto-revert-buffer`?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27571994/

10-14 01:52