Me preguntaba cuál es la mejor manera de usar el plegado de sintaxis para archivos HTML. Especialmente si puede reconocer el código JavaScript dentro de las <script>
etiquetas.
Escribí set foldmethod=syntax
pero parece que no se dobla. ¿Tengo que agregar algo más a mi .vimrc?
Sé que para JavaScript, por ejemplo, necesito agregar let javaScript_fold=1
pero no estoy seguro de si tengo que agregar algo similar para HTML.
¡Gracias!
folding
filetype-html
Sergio
fuente
fuente
Respuestas:
La
'foldmethod'
es una opción de ventana local; configurarlo desde su~/.vimrc
no necesariamente tiene el efecto correcto.Debido a que el plegado de sintaxis está vinculado al tipo de
html
archivo , estas configuraciones pertenecen a~/.vim/after/ftplugin/html.vim
:Esto depende de tener
filetype plugin on
en tu~/.vimrc
, lo que probablemente tengas. También puede configurar otras opciones relacionadas allí, por ejemplofoldcolumn=4
.También tenga en cuenta que hasta ahora (a partir de Vim 7.4.1830), el script de sintaxis HTML predeterminado solo pliega una etiqueta de varias líneas, no el texto entre la etiqueta de apertura y la de cierre .
Entonces, esto se dobla:
Pero esto no:
Para obtener esto, debe extender el script de sintaxis, por ejemplo, a través de lo siguiente, mejor ubicado en
~/.vim/after/syntax/html.vim
:Alternativa 1
El plegado se realiza entre todos los elementos html, excepto los nulos (aquellos que no tienen un hermano de cierre, como
<br>
). Contribuido por @zanona; ¡Gracias!Alternativa 2
El plegado se realiza entre ciertas etiquetas HTML estructurales (p
<head>
. Ej. ), De nivel de párrafo (p<p>
. Ej .<li>
) Y auxiliares (p<script>
. Ej. ).fuente
expr
método personalizado que uso, sin embargo, deshabilité el plegado de sintaxis para css y javascript. Al usarsyntax
javascript y css tienen pliegues como se esperaba pero ninguna de las etiquetas HTML lo hace? ¿Algunas ideas?fold
.