next up previous contents
Siguiente: Otras cuestiones relacionadas con Subir: Recuperación después de una Anterior: Recuperación después de una   Índice General

Ficheros swap de Vim

Si mientras estábamos trabajando se produce una caída del sistema cabe la posibilidad normalmente perderemos todo el trabajo realizado desde la última vez que el buffer fue guardado en disco. Vim, sin embargo, ofrece la posibilidad de recuperar parte de ese trabajo (a veces todo el trabajo). Ello es posible porque Vim utiliza un fichero de intercambio propio en el que va almacenando los cambios producidos en el fichero. Ese fichero es vaciado cuando guardamos los cambios en disco, y borrado cuando abandonamos Vim. Pero si la salida de Vim se produce abruptamente por una caída del sistema, el fichero seguirá estando en su lugar, por lo que podemos pedirle a Vim que intente reconstruir el fichero perdido. Para ello se usa la opción de línea de comando ``-r''. Así el siguiente comando:

0 0«vim -r Guia-Vim.tex0 0»

hará que Vim busque el fichero swap correspondiente a Guia-Vim.tex, y si lo encuentra intente reconstruir los cambios perdidos. Finalmente Vim nos informará con un mensaje similar al siguiente:

 Using swap file ".Guia-Vim.tex.swp" 
 ~ Original file "~/documentos/GuiaVim/Guia-Vim.tex" 
 ~ Recovery completed. 
 You should check if everything is OK. 
 ~ (You might want to write out this file under another name
 ~ and run diff with the original fileto chec for changes)
 ~ Delete the .swp file afterwards. ~

Lo primero que conviene hacer en estos casos es guardar el buffer recuperado con otro nombre para evitar que se sobreescriba el fichero original, y luego compararlo con el fichero original. Para ello Vimdiff es bastante útil.

Si en el momento de la caída aún no habíamos asignado nombre al buffer, podemos intentar la recuperación mediante:

0 0«vim -r ``''0 0»

En este caso es además imprescindible hacer esa llamada desde el mismo directorio en el que se había iniciado Vim antes de la caída del sistema. Eso es debido a que normalmente el fichero de intercambio se genera en el mismo directorio que el fichero que se edita, pero cuando el buffer no se ha asociado a ningún fichero se utiliza el directorio desde el que Vim se inició.


next up previous contents
Siguiente: Otras cuestiones relacionadas con Subir: Recuperación después de una Anterior: Recuperación después de una   Índice General
Cancerbero 2005-02-12