Emacs防止同一用户同时编辑


4

Emacs精心制作 防止同时编辑 由两个不同的用户。如果有办法有相同的设施,以防止同时编辑 相同 用户?

打开很多窗口和工作区,很容易重新打开已经在其他地方打开的文件。但是因为在打开文件时它没有检测到锁定冲突,所以在保存时只会了解碰撞。


您是否在两个不同的emacs副本中编辑文件?
ijw

是的,在两个不同的控制台上。
Peter Eisentraut

我想要与vi及其交换文件基本相同的行为。
Peter Eisentraut

Answers:


2

如果您编辑正在使用其他编辑器访问的文件,GNU Emacs将向您发出警告。如果程序更新您正在访问的文件,GNU Emacs将发出警告。

如果您重新访问已在其中一个缓冲区中的文件,那么GNU Emacs将只是转到该缓冲区。

实例;

  • 如果您访问GNU Emacs中的文件,然后在nano中编辑并保存该文件,只要您再次尝试在Emacs缓冲区中进行编辑(不仅仅是在保存时),您将收到一条警告,指出该文件已更改在磁盘和一些选项上。

  • 如果您访问一个文件然后,比如打开一些缓冲区并执行其他操作(通常的事情),然后稍后重新访问该文件(例如,使用Cx Cf或在dired中点击“enter”),那么GNU Emacs将没有打开一个新的缓冲区,但只会回到你已经拥有该文件的前一个缓冲区。

注意:我在gNewSense GNU / Linux中使用GNU Emacs 22


正如问题所述,我想知道打开文件时的冲突,而不是保存时。
Peter Eisentraut

1
@PeterEisentraut如果两个Emacs都是公正的 观看 文件,没有必要。一旦他们 修改 该文件,Emacs将发出警告(保存之前,只需修改即会触发警告)。
Trey Jackson

@PeterEisentraut:我已经确认了Trey Jackson的答案 - 一旦你尝试编辑缓冲区,Emacs会提示: some_text_file.txt changed on disk; really edit the buffer? (y, n, r or C-h)
Charles

@Charles:我知道,但这不是问题。
Peter Eisentraut

你的问题是“同时发生的 编辑
Vivi
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.