Emacs a ispell-comments-and-strings
qui fonctionne plutôt bien depuis l'intérieur de l'éditeur. Il s'appuie sur le mécanisme de coloration syntaxique pour identifier les commentaires et les chaînes, il fonctionne donc avec n'importe quel langage pour lequel vous avez une bonne coloration.
Aucune idée si vous le faites fonctionner avec votre IDE.
J'avais besoin de quelque chose comme ça aussi. Il fallait cependant qu'il puisse fonctionner non seulement sur Linux.
J'ai vu que la vérification orthographique est souvent associée à un IDE (comme avec eclipse). Cependant, je voulais un outil complètement indépendant de tout IDE, car je voulais pouvoir l'exécuter dans des contextes automatisés/scriptés comme les builds Travis-CI ou les builds AppVeyor CI.
J'ai un peu cherché un tel outil, puis j'ai décidé d'écrire le mien.
Ce que j'ai trouvé, c'est pyspellcode qui répond à ces besoins. C'est un script python qui utilise clang
et hunspell
qui devrait facilement fonctionner sur Linux au moins. Le scénario :
- exécute clang pour obtenir sa sortie de vidage AST,
- lit les informations AST et trouve les nœuds de commentaires,
- passe les mots de ceux-ci à
hunspell
pour vérification, puis - rapporte les mots qui n'ont pas été reconnus.
Ce qui a été une surprise intéressante pour moi, c'est la profondeur avec laquelle clang analyse les commentaires C++, même dans les éléments doxygen et le balisage HTML intégré. Cela a permis d'utiliser l'AST de clang pour faire des choses comme ignorer les mots imbriqués dans <code>...</code>
blocs et j'en ai profité dans le script.
Le script est disponible sur GitHub en tant que projet open source sous licence Zlib. Ce n'est qu'un logiciel alpha pour le moment avec au moins un bogue d'analyse, mais s'il y a de l'intérêt, je lui donnerai plus de priorité.
J'espère que cela vous aidera !