Choisissez un mode d'analyse

Comprendre les capacités et les limites d'Hybrid, Flyweight, Compiler et Tag.

Changer de mode

Cliquez sur le nom du mode dans la barre d'état ou ouvrez la palette de commandes et exécutez Hornet C/C++: Switch Parsing Mode. Vous pouvez également modifier les paramètres :

{
  "hornet-cpp.mode": "hybrid"
}

Hybrid · Recommandé

Conserve un index Tag et tout service Compiler disponible, en choisissant automatiquement un analyseur par fichier en fonction de la couverture des commandes de compilation.

Exigences :Naviguez hors de la boîte ; les fonctionnalités sémantiques nécessitent clangd et une base de données de compilation valide.

Idéal pour :Développement quotidien, projets existants et configuration progressive de la construction。

Flyweight

Exécute l’analyseur Tree-sitter C/C++ WebAssembly fourni dans un thread d’arrière-plan, avec des arborescences de syntaxe incrémentielles pour les fichiers récents.

Exigences :Aucun compilateur supplémentaire, installation de clangd ou compile_commands.json requis.

Idéal pour :Lecture de code inconnu, navigation légère et projets sans environnement de construction。

Compiler

clangd fournit une navigation sémantique, un changement de nom, des actions de code et des diagnostics en direct du compilateur. La résolution des macros, des types et des en-têtes nécessite une configuration complète de la construction du projet.

Exigences :Un compile_commands.json valide, clangd et la chaîne d'outils réelle de votre projet.

Idéal pour :Navigation précise, refactoring et maintenance C/C++ complexe。

Tag

Construit rapidement un index de balises lexicales dans un fil d'arrière-plan pour la navigation de base dans les symboles, la navigation et les relations d'appel.

Exigences :Aucun outil supplémentaire requis.

Idéal pour :Recherche rapide, complétion de base et navigation dans les définitions。

Limites des modes légers

Tag et Flyweight fournissent la recherche de symboles, les contours, la complétion de base, la navigation dans les définitions/déclarations, les références syntaxiques et les graphiques d'appel. Ils ne prétraitent pas, ne vérifient pas le type ou ne refactorisent pas. Les symboles portant le même nom peuvent produire plusieurs candidats.

Pour un renommage précis, des actions de code et des diagnostics du compilateur, utilisez Compiler ou configurez les commandes de compilation par fichier pour Hybrid. Les performances de Flyweight dépendent de vos fichiers et de vos modèles d'édition ; ce n'est pas toujours plus rapide que Tag.

Rechercher dans la documentation

Entrez des mots-clés pour trouver de la documentation.

Esc Fermer · Tab Sélectionnez un résultat