Question

Lorsqu'il s'agit de conflits de fusion, il est courant que le >>>>>> et le ====== insérés par DCVS soient syntaxiquement incorrects pour le fichier dans lequel je me trouve et apparaissent comme surlignés en rouge.Lors du traitement des conflits de fusion, il serait utile d'avoir des commandes pour accéder à ces erreurs.Lorsque je tape :cnext, je reçois juste le message "Aucune erreur".Ce sont des conflits de fusion Mercurial, donc je ne peux pas utiliser Fugitive, mais je préfère généralement modifier les conflits de fusion à la main de toute façon.

Existe-t-il un moyen de passer à l'erreur de syntaxe suivante dans le fichier?Je pense que ces erreurs sont dictées par le fichier de coloration syntaxique.

Était-ce utile?

La solution

Vous pouvez utiliser :lopen pour ouvrir une fenêtre contenant des lignes d'erreur / d'avertissement. Après cela, accédez à chacun d'eux.

La vraie réponse est que vous pouvez utiliser :lnext pour passer à l'erreur suivante, ou :lprev, ou l et [ l (ce sont des L minuscules) si vous avez vim-unimpaired , que vous faire, car vous ne devriez pas utiliser Vim sans lui.

Cela ne passera pas réellement au prochain groupe de texte en surbrillance rouge / erreur, mais passera à tout ce que votre plugin de syntaxe dicte une erreur (et remplit la liste des emplacements). Il est impossible dans Vim de passer à un groupe de mise en surbrillance spécifique, car personne ne s'est encore donné la peine de savoir comment.

Le plugin SRDispHiGrp se rapproche, mais si vous ne pouvez pas à partir du nom, est trop convulté et déroutant pour un usage humain.

Autres conseils

Je pense que vous étiez sur la bonne voie avec :cnext.

:cnext et :cprevious sont des commandes Vim QuickFix;vous pouvez en profiter en utilisant un plugin de validation de code qui utilise le mode QuickFix, comme pyflakes.vim pour Python et jslint.vim / jshint.vim pour JavaScript.

Cela entraînera des erreurs de syntaxe marquées par des soulignements rouges ondulés, par opposition à l'erreur de syntaxe rouge solide mise en évidence que je crois que vous voyez.Vous devriez alors pouvoir utiliser :cnext et :cprevious pour passer aux erreurs marquées suivantes et précédentes.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top