vim - ¿Cómo establecer el valor predeterminado para desplegar cuando abre un archivo?
file-io default (7)
En mi .vimrc
he puesto set foldmethod=syntax
para habilitar el plegado de métodos, etc. Sin embargo, no me gusta el valor predeterminado de que cada vez que abro un archivo, todo se dobla. ¿Hay alguna manera de habilitar el foldmethod
, pero tener archivos desplegados cuando los abro?
En .vimrc
agrega un autocmd para BufWinEnter
para abrir todos los pliegues de esta manera:
autocmd BufWinEnter * silent! :%foldopen!
Que le diga a vim que ejecute el silent :%foldopen!
después de abrir el evento BunWinEnter
(ver :h BufWinEnter
). ¡El silent %foldopen!
ejecutará foldopen
en todo el buffer gracias al %
y abrirá todos los pliegues recursivamente debido a !
. Cualquier mensaje de error eventual será suprimido por el silent
. (Puede recibir mensajes de error como E490: No fold found
si el buffer en realidad no contenía ningún pliegue aún)
Nota: Puede usar BufRead
lugar de BufWinEnter
pero luego si el archivo tiene una línea de modo que habilite el plegado que anulará este autocmd. Quiero decir que BufRead
autocmds se ejecuta antes de que se procese la línea de modo y BufWinEnter
los ejecutará después. Encuentro que el último será más útil
Puede asignarlo a las claves para habilitarlo. Por ejemplo,
nmap ,f :set foldmethod=syntax<CR>
Luego, mientras está en modo normal, presione la combinación de teclas ", f"
Puede poner esto en su .vimrc
: au BufRead * normal zR
Declara un comando automático ( au
), que se activa cuando se lee un búfer ( BufRead
), que coincide con todos los archivos ( *
) y ejecuta el zR
(abre todos los pliegues) en el modo normal.
Puedes añadir
set foldlevelstart=99
a su archivo .vimrc, y comenzará a editar cualquier archivo nuevo con todos los pliegues abiertos.
Si desea una manera de mostrarla desplegada tan pronto como se abre, puede usar set foldlevelstart=99
como se explican muchas respuestas.
Pero, si solo quieres verlos desplegados, puedes presionar zi
y desplegará todo. Otro, zi
los cerrará de nuevo.
set foldlevel=99
debe abrir todos los pliegues, independientemente del método utilizado para doblar. Con foldlevel=0
todo doblado, foldlevel=1
solo somes, ... los números más altos cerrarán menos pliegues.
set nofoldenable
Agregar esto a su .vimrc
desactivará temporalmente el plegado cuando abra el archivo, pero los pliegues aún se pueden restaurar con zc