¿Qué es un archivo .un ~ o por qué Vim en la Terminal crea el archivo .un ~?

93

Me he dado cuenta de que tengo algunos archivos de puntos que terminan con .un~, por ejemplo, tengo un .vividchalk.vim.un~, pero no estoy seguro de dónde vino. Parece que se crean cuando uso Vim en la Terminal. ¿Qué son estos archivos? ¿Pueden quitarse ellos mismos cuando cierre el archivo que estoy editando?

kaplan
fuente

Respuestas:

136

Cuando edita y guarda archivos, Vim crea un archivo con el mismo nombre que el archivo original y una un~extensión al final.

Vim 7.3 contiene una nueva función de deshacer persistente, es decir, la información de deshacer no se perderá al salir de Vim y se almacenará en un archivo que termine con .un~. Ha configurado la undofileopción, por lo que Vim crea un archivo de deshacer al guardar el archivo original. Puede evitar que Vim cree el archivo de respaldo, desmarcando la opción:

:set noundofile

Tenga en cuenta que, de forma predeterminada, esta opción está desactivada. Ha habilitado explícitamente la undofileopción en uno de los archivos de inicialización. Si desea que sus no archivos se almacenen solo en un directorio en particular, puede apuntar la undodiropción a un directorio que contendrá todos sus archivos no agregados.

Fuente: http://vimhelp.appspot.com/vim_faq.txt.html#faq-7.2

TheEwook
fuente
4
¡Gracias! Soy nuevo en Vim y trato de comprender y configurar sin cortar la carga. Veo ahora que viene ese escenario vim-sensible. Leer el archivo Léame en vim-sensible es muy útil. Y aprendí (de un screencast de peepcode) que puedo hacer :verbose set undofile?y veré dónde está configurada esa opción. Creo que tengo ese derecho.
kaplan
1
Tengo Vim 7.3 y la función de deshacer persistente no me funciona (necesito tener set undofilela función de deshacer persistente). ¿Otras configuraciones interfieren con la nueva función, por ejemplo, nobackupo noswapfile?
Dennis
Creo que el instalador cream non-cream-vim también lo habilita de forma predeterminada.
Josiah Yoder
1
¡¡Oh hombre!! ahora tengo que recordar: set nobackup set noswapfile set noundofileen cada _vimrc si no quiero huellas de cachorros ?? !! Uno pensaría que UNO de esos podría estar apagado por defecto o algo así ...
ebyrob
12
Parece que vim 8 (al menos 8.0.427) tiene esta función activada de forma predeterminada. YMMV por supuesto ...
Chuck Wolber
3

Me tomó un tiempo encontrar dónde poner realmente el :set noundofilecomando. Soy nuevo y solo responderé cómo hice que no haga copias de seguridad.

  1. Abra vim.
  2. Escriba en modo comando :e $HOME/.vimrc
  3. Escribir :set noundofile
  4. Guardar y salir: :wq
Spiros Skouras
fuente
Funciona para mi caso de uso, que es un poco diferente: usar Vim dentro de ConEmu en Windows. ¡Gracias!
Mário Meyrelles
Obtuve undofiles de forma predeterminada en el instalador de Windows vim. Tu guía me ayudó, ¡gracias!
Cardin