2012-03-19 189 views
1

这是很难被1或2个字来描述所以在这里,我会以用例:有没有办法在Vim中进行“虚拟”编辑?

  1. 用户A创建充当可填写表格的文本文件/清单
  2. 用户A的文件保存到共享库
  3. 用户B和用户C打开该文件,并填写表格/清单,因为他们做他们的工作
  4. 更改场(理想)或整个文件被忽略,如果意外保存的文件

注意:UserB和UserC可能有时也需要对文本文件进行结构更改,因此禁止它们在文件系统/文件共享级别写入/修改访问权限不是选项。当需要进行结构编辑时(例如,用户使用vim的特殊标志打开文件或在打开文件后按下“解锁”键序列),它必须是有意识的决定。

+0

有一段时间我以为你在描述类似[1968年的这个演示](http://sloan.stanford.edu/mousesite/1968Demo.html)。 – 2012-03-19 04:33:41

+1

CVS,SVN或Git等版本控制系统可能适用于这种情况。也可以尝试Gobby,一个协作编辑软件。 – wks 2012-03-19 05:02:37

+3

这对我来说似乎并不特别适合“纯文本编辑器”的工作。你应该为它制作或使用专门的工具。 – 2012-03-19 06:39:20

回答

1

您描述的工作流程表明UserB和UserC实际上并不需要保存该文件(除非他们正在进行结构编辑),他们通常只需要将其打开即可,因此他们可以在完成时标记快速行项目。 (如果他们实际上确实需要保存他们的编辑内容,则需要在用例中提供更多详细信息,然后我同意评论者的意见,无论如何您需要更强大的解决方案。)

最简单方法是在文件系统中将文件标记为只读文件。在Windows上,您可以使用attrib +r filename.txt执行此操作。我忘记在Unix风格的系统中是否有等价的属性,或者你是否必须完全删除写权限。

当UserB或UserC需要保存更改以进行结构编辑时,它们会执行:w!而不是通常的:w来保存文件。这迫使vim忽略readonly属性并保存文件。

相关问题