2011-04-28 162 views
25

的模式我似乎马上要下的是:Vim的命令“编辑该文件的副本”

  • 编辑一个文件,直到我喜欢
  • :w another-file使用它作为一个起点another-file
  • :e another-file擦亮another-file

有一个现有的前命令执行后两个步骤一次?像:writeAndEdit another-file

我可以伪造一个使用vimscript,我只想知道是否有一个现有的命令。

+1

好问题。我也使用这种方法,而且很容易出错。 – 2011-04-28 21:07:19

+2

Vim的问题属于这里。这在很久以前就已经被投票了。 – 2011-04-28 21:44:10

+0

我曾经做过的事情是:w newfile然后:[UPARROW] [HOME] [DEL] e [ENTER]取最后一个命令并将它从a:w更改为:e,这样您的拼写错误少得多。还有两个步骤不太容易出错。现在我知道我将会使用saveas,但是我想我会在这里提及它,因为这个想法可能对其他任务有用。 – stephenmm 2011-04-28 23:38:56

回答

38

可以:saveas能做这份工作吗?

:sav[eas][!] [++opt] {file} 
      Save the current buffer under the name {file} and set 
      the filename of the current buffer to {file}. The 
      previous name is used for the alternate file name. 
8

如果先打开新文件,然后将原始文件复制到缓冲区,则不太可能覆盖原始文件。

:e another-file 
:r original-file 

我找到了你的答案。键入:help saveas并享受!

:[!] SAV [EAS] [++选择] {}文件保存 名 {}文件在当前缓冲区,并设置 当前缓冲区的{}文件的文件名。 以前的名称用于替代文件名称 。覆盖现有文件所需的[!]为 。 在写入文件之前,'filetype'为空时,文件类型为 的检测使用新名称 完成。 写入成功时 '只读'被重置。 {not in Vi}

+0

文森特G击败你:) – rampion 2011-04-28 21:41:25

+1

@rampion不按照时间戳,看起来像法官是1秒更快! – 2014-12-11 10:32:00