Comment faire pour que VIM affiche des parenthèses non fermées?


9

Existe-t-il un moyen de modifier mon fichier .vimrc afin que les parenthèses / crochets / accolades non fermés soient mis en surbrillance? Par exemple, ce qui suit mettrait en évidence la parenthèse après le mot main:

public static void main(String[] args
{
    System.out.println("Foobar");
}

Ou peut-être, demandez à VIM de me dire que j'ai une parenthèse non fermée. Il semble que VIM affiche actuellement lorsque vous avez une parenthèse non ouverte mais pas lorsque vous en avez une non fermée .


Ce serait bien, même si je doute que nous verrons une solution puisque la valeur par défaut serait la même prochaine fermeture, donc celle qui manque après String [] serait supposée comme après car VIM ne sait pas que ce n'est pas un argument.
nerdwaller

Réponses:


2

Il existe un plugin pour que vim fasse exactement cela. Étant donné cela, votre exemple de code:

public static void main(String[] args
{
    System.out.println("Foobar");
}

Partout où vous placez votre curseur, les parenthèses incompatibles avec le dos le plus proche seront mises en évidence. Le seul défaut est qu'il ne regarde pas vers l'avant, pour voir s'il est apparié plus tard. Donc, si vous étiez dans les parenthèses pringln, cela mettrait en évidence la première. Il est fondamentalement fonctionnel et devrait bien vous servir.

Il s'appelle vim-matchopen et peut être trouvé à https://github.com/arnar/vim-matchopen


Si vous n'avez pas expiré en installant des plugins vim, voici une introduction rapide pour celui-ci. (Je suppose que vous utilisez Linux.)

Accédez au site de téléchargement. Si vous avez git et savez comment l'utiliser, allez-y. Sinon, utilisez le bouton de téléchargement du zip et extrayez le zip téléchargé vers une destination temporaire.

Ensuite, vous devez prendre le script plugin/matchopen.vimet le placer dans le répertoire ~/.vim/plugin. Si ce répertoire n'existe pas, créez-le.

Ça devrait être ça. Ensuite, vous serez opérationnel. Redémarrez simplement vim.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.