¿Cómo guardar como un nuevo archivo y seguir trabajando en el original en Vim?

362

Cada vez que uso el :savcomando, guarda el archivo con un nuevo nombre y abre el nuevo archivo abierto en Vim.

¿Es posible guardar el archivo con un nombre nuevo pero mantener abierto el original para editarlo?

vimguy
fuente
13
Vine con la pregunta opuesta.
Cambunctious
44
@cambunctious Yo también. Estaba buscando en Google vim "save as"y esta pregunta me enseñó que hay una :saveasque funciona como esperaba: guarda el archivo existente con un nuevo nombre y abre el nuevo archivo.
Jacktose

Respuestas:

526

Use el :wcomando con un nombre de archivo:

:w other_filename
Wilhelmtell
fuente
78
Además, use :w %:h/other_filenamepara escribir en un nombre de archivo en el mismo directorio que el archivo abierto.
loevborg
2
@ Ioevborg, ¿cuándo no es ese el caso? Simplemente: w fname sin leer su comentario y el comportamiento parece ser el predeterminado.
Blake
10
@ Cokemonkey11 No es un comportamiento predeterminado en vim que la ubicación del archivo actual sea la misma que la del directorio de trabajo. Probablemente tenga algo en su archivo vimrc que esté haciendo esto por usted. Puede encontrar más información aquí vim.wikia.com/wiki/Set_working_directory_to_the_current_file
Derek
8
Acabo de confirmar que sin el "%: h /" el archivo se guardará en el directorio en el que estaba cuando abrió vim, no donde estaba el archivo original ...
RVC
77
Puede ser útil mencionar que :w other_filenameva a escribir datos other_filename solamente y no el archivo actual.
Ram Patra
270

Gracias por las respuestas Ahora sé que hay dos formas de "GUARDAR COMO" en Vim.

Supongo que estoy editando hello.txt.

  • : w world.txt escribirá el contenido de hello.txt en el archivo world.txt mientras mantiene hello.txt como el búfer abierto en vim.
  • : sav world.txt primero escribirá el contenido de hello.txt en el archivo world.txt, luego cerrará el búfer hello.txt, finalmente abrirá world.txt como el búfer actual.
Jianwen W.
fuente
27
:savno cerrará el búfer inicial, lo ocultará. Por defecto, los búferes ocultos se descargan, pero esto se puede anular (con las opciones 'ocultas' o 'ocultas').
ZyX
77
Entonces, sí ... :savestá más cerca del "Guardar como" que he conocido.
Skytreader 05 de
8
De la ayuda de Vim: :sav[eas][!] [++opt] {file}Entonces, :sav es el acortador para :saveas. Mientras que, :wes el atajo para :[range]w[rite][!] [++opt] {file}. Y todo está en el manual, solo unas pocas líneas arriba / abajo.
Atcold
23

Después de guardar el archivo nuevo, presione

Ctrl-6

Este es un acceso directo a un archivo alternativo

SergioAraujo
fuente
2
Para lo que vale, usando nvim 0.1.0 en OS X 10.10.5, esto requiere SHIFT-CTRL-6.
Aaron Mendez
shift-ctrl-6 en una versión Homebrew de Vim en OS X 11.
Mateusz Piotrowski el
3

El siguiente comando creará una copia en una nueva ventana. Para que pueda seguir viendo tanto el archivo original como el nuevo archivo.

:w {newfilename} | sp #
tivn
fuente