0

使用 >1 Emacs(在 >1 台机器上),并希望在我恢复使用特定 Emacs 时检查所有打开的缓冲区是否有更改(它们是通过 tramp/ssh 远程打开的)。

不同的 Emacs 可能没有打开完全相同的文件,但可能存在交叉。

不使用桌面模式或任何类似的闪光灯(还)。

谢谢!

4

2 回答 2

1

如果您希望在关联文件被另一个程序更改时在 Emacs 中恢复缓冲区,那么您应该查看
C-hf global-auto-revert-mode RET

于 2011-05-06T14:07:26.203 回答
0

如果我理解正确,如果文件已在 emacs 之外修改,您希望将任何缓冲区恢复为其文件的内容。

这是一个 lisp 的小片段,它将遍历未修改的缓冲区并从磁盘重新加载内容:

(require 'cl)
(loop for buffer being the buffers
      do (when
             (and (not (buffer-modified-p buffer)) (buffer-file-name buffer))
           (switch-to-buffer buffer)
           (revert-buffer nil t)))
于 2011-05-06T07:14:34.027 回答