Je suis un nouvel utilisateur de Vim et j'ai trouvé que sa courbe d'apprentissage est assez raide (du moins pour moi). Je viens d'installer ce script vim pour la vérification des erreurs JavaScriptLint, qui montre les erreurs dans la fenêtre de correction rapide de vim une fois que j'ai enregistré un tampon.
Cependant, je ne sais pas quoi faire ensuite. Comment faire défiler toutes les erreurs? Comment fermer la «fenêtre» du correctif rapide? Comment puis-je le faire vérifier les erreurs après avoir modifié mon code?
J'ai regardé la documentation de vim quickfix mais la quantité de commandes est écrasante et je n'arrive pas à trouver ce que je veux. Toute aide serait appréciée.
Une question secondaire: est-il possible que javascriptlint vérifie les erreurs js pour le code résidant dans un fichier .html?
Merci!
:cn
ne devrait pas fermer la fenêtre qf, mais elle basculera vers la fenêtre contenant l'erreur: est-ce ce que vous entendez par "sauter"? Vous pouvez rapidement revenir en arrière avecCtrl-W p
ou:wincmd p
, donc vous pouvez faire:command! CN :cn | wincmd p<CR>
ou quelque chose comme ça (non testé). Cela devrait vous donner une:CN
commande qui va à l'erreur suivante sans quitter la fenêtre de correction rapide. Sinon, vous pouvez faire quelque chose comme:au BufWinEnter quickfix nmap <buffer> <Enter> :.cc | wincmd p<CR>
(encore une fois non testé) et utiliser Entrée pour sélectionner une erreur sans quitter la fenêtre de correction rapide.Le moyen le plus simple de naviguer dans la liste des correctifs rapides (ou la liste des emplacements, d'ailleurs) est le
unimpaired
plugin .Une fois la fenêtre de quickfix est peuplée,
[q
et]q
aller de l' avant et à l' arrière (respectivement) dans la liste des quickfix.[Q
et]Q
allez au début et à la fin (ce qui est particulièrement pratique si vous n'avez qu'un seul élément dans la liste; cela fait que vim se plaint de[q
et]q
). Le flux de travail est donc:[Q
pour accéder au premier élément[q
et]q
Si vous utilisez Syntastic, vous obtiendrez la liste des emplacements au lieu de la liste des correctifs rapides. Aucun problème; tout usage
[L
,]L
,[l
et]l
de la même manière.unimpaired
a des tas d'autres mappages pratiques aussi -[e
et]e
des lignes "bulle" de haut en bas,[<Space>
et]<Space>
insérer des lignes vierges au-dessus et en dessous, etc. J'ai été surpris que personne ne l'ait mentionné ici auparavant; c'est probablement parce qu'il n'existait qu'en janvier 2010, bien que la question ait été posée en 2009.la source
Mettez les deux lignes suivantes dans votre fichier .vimrc:
Vous pouvez maintenant parcourir les erreurs à l'aide de ctrl-j et ctrl-k, qui imite les commandes de mouvement standard vers le bas et vers le haut j et k.
la source
<c-j>
parfois (dépend du terminal?!) est erroné ou ne fonctionne pas du tout, car cela signifie la même chose que <NL> // le plus simple, à utiliser<c-n>
et à la<c-p>
place // sinon: stackoverflow.com/questions/8304421/…noremap <F7> :cprevious<CR>
etnoremap <F8> :cnext<CR>
dans.vimrc
<C-j>
et<C-k>
pour naviguer entre les divisions vim et les volets tmux avec le navigateur vim tmux . Les combinaisons<C-M-j>
et<C-M-k>
pourraient être une alternative.Vous pouvez également utiliser
:cc 2
(ou tout autre nombre) pour accéder, dans ce cas, à la deuxième erreur dans la fenêtre de correction rapide. Navigation avec:cn
,:cc 4
, etc mettra le curseur sur la ligne en question.la source
La meilleure façon d'intégrer la vérification de la syntaxe JavaScript consiste à utiliser le plugin Syntastic Vim , qui utilise la fenêtre de liste d' emplacement de Vim (qui est parallèle à la correction rapide ).
J'ai écrit des réponses à cette question et à cette question expliquant comment le faire, ainsi que comment obtenir la navigation du code source / la liste de balises pour Vim en utilisant le jshint.com géré par la communauté (ce qui est bien meilleur que JSLint IMO) et DoctorJS de Mozilla (anciennement jsctags ).
la source
Peut - être que cette option n'existait pas lorsque cette question a été écrit (ou je suis peut - être moi - même embarrassant parce qu'il ya quelque chose dans mon
.vimrc
qui fait cela arrive) , mais quand je reçoisQuickfix List
, je navigue juste avecj
etk
puis appuyez sur<CR>
(la touche Entrée) pour accéder à cet endroit du fichier.Ensuite, pour revenir au
Quickfix List
je tapeCtrl
+W
j
pour "descendre une fenêtre" et je suis de retour.Enfin, lorsque j'ai terminé, je tape simplement
:q
, comme je le ferais pour fermer n'importe quelle fenêtre normale.la source
nmap <CR> o<Esc>
, donc je pourrais ajouter de nouvelles lignes en mode normal.la fenêtre de correction rapide fonctionne principalement comme n'importe quelle autre fenêtre vim: j en bas d'une ligne, k en haut d'une ligne,: cn pour passer à l'erreur / avertissement suivant, etc.
expérience!
la source
En plus de l'excellente réponse @DrAl sur la façon d'ouvrir et de fermer la fenêtre rapide et de naviguer entre les entrées, j'ai créé une image pour montrer certaines des autres commandes de navigation de correction rapide.
Chaque groupe de 3 fichiers ci-dessous représente un ensemble de résultats de correction rapide, par exemple à partir d'un vimgrep. cnewer et plus froid sont pour passer par des ensembles de résultats historiques.
la source