¿Puedo guardar pliegues?


13

Hoy aprendí a doblar / desplegar en Vim; Es bastante útil.

Inesperadamente, cuando salgo de un archivo y lo reingreso, los pliegues que creé se han ido (desplegados).

En el gran proyecto de nuestra empresa, hay muchos bloques de código fijos (heredados) que son obsoletos pero indispensables.

Realmente necesito doblarlos casi permanentemente.

¿Hay alguna forma breve de decirle a Vim que guarde mis preferencias de plegado para un archivo?


1
No sé si resolverá su problema, pero tal vez los comandos :mkviewy :loadviewpodrían ayudar. Usted podría intentar agregar estas 2 líneas dentro de su vimrc au BufWinLeave *.c mkviewy au BufWinEnter *.c silent loadviewy adaptarlos a sus necesidades específicas. Estos son comandos automáticos que se ejecutarán automáticamente cada vez que deje un búfer para el primero y cuando ingrese un búfer para el segundo, pero solo para los archivos C. Los he copiado de la ayuda del :mkviewcomando ( :help :mkview).
Saginaw

1
Según la ayuda, debe restaurar los pliegues cuando se usa el plegado manual y la opción 'viewoptions'contiene folds. Si desea que los comandos automáticos se ejecuten para otros tipos de archivos, puede cambiar los comandos automáticos. Por ejemplo, si desea agregar archivos de Python, puede cambiar *.ca *.c,*.py.
saginaw

Lo siento, me equivoqué cuando dije que los comandos automáticos se ejecutarían cada vez que ingrese / salga de un búfer. El primero se ejecutará después de que se muestre un búfer en una ventana, el segundo se ejecutará antes de eliminar un búfer de una ventana.
saginaw

Respuestas:


6

Hago exactamente esto para un archivo al que me refiero mucho NOTES.otl. Realicé lo siguiente en mi .vimrc:

" Useful for my Quick Notes feature in my tmuxrc
augroup QuickNotes
  au BufWrite,VimLeave NOTES.otl mkview
  au BufRead           NOTES.otl silent loadview
augroup END

Lo que esto significa es que en su caso puede manejar pliegues manuales utilizando los comandos :mkviewy :loadview.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.