Soy un usuario de Vim bastante nuevo y he descubierto que su curva de aprendizaje es bastante empinada (al menos para mí). Acabo de instalar este script vim para la comprobación de errores de JavaScriptLint, que muestra errores en la ventana de corrección rápida de vim una vez que guardo un búfer.
Sin embargo, no sé qué hacer a continuación. ¿Cómo puedo "desplazarme" por todos los errores? ¿Cómo cierro la 'ventana' de corrección rápida? ¿Cómo consigo que verifique si hay errores después de haber realizado cambios en mi código?
He visto los documentos de corrección rápida de vim, pero la cantidad de comandos es abrumadora y parece que no puedo encontrar lo que quiero. Cualquier ayuda sería apreciada.
Una pregunta paralela: ¿hay alguna forma de que javascriptlint verifique errores js para el código que reside en un archivo .html?
¡Gracias!
:cn
no debería cerrar la ventana qf, pero cambiará a la ventana que contiene el error: ¿es esto lo que quiere decir con "saltar"? Puede volver a cambiar rápidamente conCtrl-W p
o:wincmd p
, para que pueda hacer:command! CN :cn | wincmd p<CR>
o algo así (no probado). Esto debería darle un:CN
comando que va al siguiente error sin salir de la ventana de corrección rápida. Alternativamente, puede hacer algo como:au BufWinEnter quickfix nmap <buffer> <Enter> :.cc | wincmd p<CR>
(nuevamente sin probar) y usar Enter para seleccionar un error sin salir de la ventana de corrección rápida.La forma más fácil de navegar por la lista de arreglos rápidos (o la lista de ubicaciones, para el caso) es el
unimpaired
complemento .Una vez que se completa la ventana quickfix,
[q
y]q
vaya hacia adelante y hacia atrás (respectivamente) en la lista quickfix.[Q
y]Q
vaya al principio y al final (lo cual es especialmente útil si solo tiene un elemento en la lista; esto hace que vim se queje[q
y]q
). Entonces el flujo de trabajo es:[Q
para ir al primer elemento[q
y]q
Si está utilizando Syntastic, obtendrá la lista de ubicaciones en lugar de la lista de corrección rápida. No hay problema; uso justo
[L
,]L
,[l
, y]l
de la misma manera.unimpaired
también tiene muchas otras asignaciones útiles -[e
y]e
líneas de "burbuja" hacia arriba y hacia abajo,[<Space>
e]<Space>
inserta líneas en blanco arriba y abajo, etc. Me sorprendió que nadie lo mencionara aquí antes; probablemente se deba a que no existió hasta enero de 2010, aunque la pregunta se hizo en 2009.fuente
Pon las siguientes dos líneas en tu archivo .vimrc:
Ahora puede navegar a través de los errores usando ctrl-j y ctrl-k, que imita los comandos estándar de movimiento hacia abajo y hacia arriba j y k.
fuente
<c-j>
en algún momento (depende del terminal ?!) es errónea o no trabajar en conjunto, porque significa lo mismo que <NL> // el ist más fácil, a utilizar<c-n>
y<c-p>
en lugar de lo contrario //: stackoverflow.com/questions/8304421/...noremap <F7> :cprevious<CR>
ynoremap <F8> :cnext<CR>
en.vimrc
<C-j>
y<C-k>
para navegar entre divisiones de vim y paneles tmux con el navegador vim tmux . Las combinaciones<C-M-j>
y<C-M-k>
podrían ser una alternativa.También puede usar
:cc 2
(o cualquier otro número) para saltar, en este caso, al segundo error en la ventana de corrección rápida. Navegando con:cn
,:cc 4
, etc. pondrá el cursor en la línea en cuestión.fuente
La mejor forma de integrar la verificación de sintaxis de JavaScript es usar el complemento Syntastic Vim , que usa la ventana de lista de ubicaciones de Vim (que es paralela a la corrección rápida ).
He escrito las respuestas para esta pregunta y esta pregunta explicando cómo hacerlo, además de cómo obtener una lista de etiquetas / exploración de código fuente para Vim usando jshint.com impulsado por la comunidad (que es mucho mejor que JSLint IMO) y DoctorJS de Mozilla (anteriormente jsctags ).
fuente
Tal vez esta opción no existía cuando se escribió esta pregunta (o tal vez me estoy avergonzando porque hay algo en mi
.vimrc
que hace que esto suceda) pero cuando obtengo unaQuickfix List
, simplemente la navego conj
yk
luego presiono<CR>
(es decir, la tecla Enter) para saltar a ese lugar en el archivo.Luego, para volver a
Quickfix List
, escriboCtrl
+W
j
para "bajar una ventana" y estoy de vuelta.Finalmente, cuando termino, simplemente escribo
:q
, como lo haría para cerrar cualquier ventana normal.fuente
nmap <CR> o<Esc>
, para poder agregar nuevas líneas en modo normal.la ventana de corrección rápida se opera principalmente como cualquier otra ventana de vim: j hacia abajo una línea, k hacia arriba una línea,: cn para saltar al siguiente error / advertencia, etc.
¡experimentar!
fuente
Además de la excelente respuesta de @DrAl sobre cómo abrir y cerrar la ventana rápida y navegar entre las entradas, hice una imagen para mostrar algunos de los otros comandos de navegación de solución rápida.
Cada grupo de 3 archivos a continuación representa un conjunto de resultados de corrección rápida, por ejemplo, de un vimgrep. más fríos y más fríos son para pasar por conjuntos de resultados históricos.
fuente