Siguiente: Copias de seguridad
Subir: Abrir y guardar ficheros
Anterior: El comando ``:edit''
  Índice General
El comando general para guardar ficheros en disco es:
0 0«:[rango]w[rite] [»] [NombreFichero]0 0»
Donde:
- rango
- es un rango opcional de líneas. Si no se especifica se
guardará todo el fichero, pero si se especifica se guardarán exclusivamente
las líneas indicadas.
- :w[rite]
- significa que podemos usar el comando en el formato ``:w''
o en el formato ``:write''
- »
- es un elemento opcional. Si se incluye y luego se incluye el
nombre de un fichero, el contenido actual del buffer se grabará al final
del fichero indicado, sin borrar el contenido previo del mismo.
- NombreFichero
- Es un argumento casi siempre opcional. Sólo es
obligatorio en el caso de que estemos editando un buffer que no esté
asociado a ningún fichero, en cuyo caso antes de grabarlo por primera vez
hay que establecer esa asociación proporcionando un nombre de fichero. Para
más detalles sobre el argumento NombreFichero véase a continuación.
Normalmente en Vim un concreto buffer de edición está asociado a un
fichero, de modo que ejecutando ``:write'' sin ningún dato adicional, se
grabará dicho buffer en dicho fichero. Ahora bien, en ocasiones nos puede
interesar cambiar la asociación entre el buffer y el fichero. Para esta
operación en Vim se distinguen las siguientes posibilidades:
- Cambiar la asociación del buffer, sin guardar nada en el disco. Para
ello se usa el comando 0 0«:file NuevoNombre0 0». Este comando no escribe
nada en el disco, pero la próxima vez que ejecutemos ``:write'' el fichero
se grabará con el nuevo nombre.
- Guardar en un fichero distinto sin cambiar la asociación del buffer,
es decir: de tal modo que sigamos editando el mismo fichero que antes. Para
ello basta con ejecutar 0 0«:write NuevoNombre0 0»: el buffer se grabará con
ese nuevo nombre, pero seguirá asociado al nombre anterior, de manera que
la próxima vez que se ejecute ``:w'' sin argumento se guardarán los cambios
en el fichero original. Si el fichero NuevoNombre ya existe, se producirá
una advertencia de error, a no ser que hayamos usado el comando en la forma
0 0«:write!0 0».
- Cambiar la asociación del buffer y guardarlo en el disco con el nuevo
nombre. Para ello se usa el comando 0 0«:saveas NuevoNombre0 0». Este
comando equivale a usar primero ``:file'' y luego write, o a usar primero
``:write NuevoNombre'' y luego ``:edit NuevoNombre''. En suma el buffer se
guardará con un nuevo nombre y la edición continuará asociando el buffer
actual a dicho nuevo fichero.
Si hemos abierto el fichero en el modo de sólo lectura (con la opción -R o
con el comando 0 0«view0 0» que activa Vim en el modo de solo lectura), al
ejecutar el comando ``:w'' recibiremos un mensaje de error. Aun así
podremos guardar los cambios si tras el comando ``:w'' añadimos ``!''. Si
por el contrario iniciamos Vim con el comando -M, no podremos grabar los
cambios del fichero a no ser que activemos las opciones de Vim
``modifiable'' y ``write''.
Parecido a ``:write'' es el comando 0 0«:update0 0» la diferencia entre uno y
otro es que el segundo no hace nada en el caso de que el fichero editado no
haya sufrido ninguna modificación.
Siguiente: Copias de seguridad
Subir: Abrir y guardar ficheros
Anterior: El comando ``:edit''
  Índice General
Cancerbero
2005-02-12