如何保存为新文件并继续处理Vim中的原始文件?

vim*_*guy 352 vim save save-as

每当我使用该:sav命令时,它都会使用新名称保存文件,并在Vim中打开新文件.

是否可以使用新名称保存文件,但保持原始文件可以编辑?

wil*_*ell 510

使用:w带有文件名的命令:

:w other_filename
Run Code Online (Sandbox Code Playgroud)

  • 此外,使用`:w%:h/other_filename`写入与打开文件相同的目录中的文件名. (73认同)
  • @ Cokemonkey11 vim中的默认行为不是使当前文件的位置与工作目录相同.您可能在vimrc文件中有一些东西正在为您执行此操作.更多信息可以在这里找到http://vim.wikia.com/wiki/Set_working_directory_to_the_current_file (10认同)
  • 我刚刚确认没有"%:h /",文件将保存在您打开vim时所在的目录中,而不是原始文件所在的位置.... (8认同)
  • 提及`:w other_filename`只会将数据写入`other_filename`****而不是当前文件可能会有用. (6认同)
  • @Ioevborg什么时候不是这样?我只是:w fname没有读你的评论,行为似乎是默认的. (2认同)
  • @loevborg 或 `:w %<Tab>` 展开当前名称,然后对其进行编辑 (2认同)

Jia*_* W. 265

谢谢你的回答.现在我知道在Vim中有两种"SAVE AS"的方法.

假设我正在编辑hello.txt.

  • :w world.txt 将hello.txt的内容写入文件world.txt,同时将hello.txt保持为vim中打开的缓冲区.
  • :sav world.txt将首先将hello.txt的内容写入文件world.txt,然后关闭缓冲区hello.txt,最后打开world.txt作为当前缓冲区.

  • `:sav`不会关闭初始缓冲区,它会隐藏它.默认情况下,隐藏缓冲区已卸载,但可以覆盖(使用"hidden"或"bufhidden"选项). (27认同)
  • 从Vim的帮助:`:sav [eas] [!] [++ opt] {file}`所以,`:sav`**是``saveas`的缩写.然而,`:w`是`:[range] w [rite] [!] [++ opt] {file}`的快捷方式.一切都在手册中,上面/下面只有几行. (8认同)
  • 所以,是的...`:sav`更接近我所知道的"另存为". (7认同)

Ser*_*ujo 22

保存新文件后按

Ctrl-6
Run Code Online (Sandbox Code Playgroud)

这是备用文件的快捷方式

  • 对于它的价值,在 OS X 10.10.5 下使用 nvim 0.1.0,这需要 SHIFT-CTRL-6。 (2认同)

tiv*_*ivn 6

以下命令将在新窗口中创建副本。这样您就可以继续查看原始文件和新文件。

:w {newfilename} | sp #
Run Code Online (Sandbox Code Playgroud)