2009-07-29 17 views
5

Vim 7.0.237 me está volviendo loco con indentexpr=HtmlIndentGet(v:lnum). Cuando edito JavaScript en una etiqueta <script> sangrada para que coincida con el html circundante y presiono enter, mueve la línea anterior a la columna 0. Cuando autoindeno el archivo completo, la secuencia de comandos vuelve a la derecha.¿Cómo hago vim indent JavaScript en HTML?

¿Dónde está el sangrado JavaScript-in-HTML/XHTML no molesto de vim?

Respuesta

1

¿Has probado this plugin?

+1

Insatisfactorio. Obtengo un par de llamadas de función decentemente seguidas por una var. Alineada a la izquierda. Algunas personas encontrarán agradable que el complemento no sangre para o , por lo que la estructura interesante del documento es menos probable que esté demasiado a la derecha. – joeforker

+7

Entonces, ¿por qué aceptar esta respuesta? – innaM

0

Personalmente puedo alternar entre :set ai y :set noai, pero podría ser demasiado tedioso para usted.

+0

ai = autoindent, ver http://vim.wikia.com/wiki/Indenting_source_code – Seth

1

Recomiendo instalar vim-javascript.

Es un complemento actualizado que sangra apropiadamente javascript, incluyendo desarrollos más recientes como la sintaxis utilizada en cierres como con jQuery.

0

Tengo complementos para sangrar archivos HTML y JavaScript. Para sangrar JavaScript dentro de HTML, cambio temporalmente el tipo de archivo, selecciono y sangría las líneas, y luego cambio el tipo de archivo de nuevo.

:filetype javascript 
(select lines) 
= 
:filetype html 

Es un poco tedioso, pero siempre produce los resultados que espero.

Cuestiones relacionadas