Commentaires et docstrings : comment traduire uniquement les commentaires sans modifier le code ?
“En insérant directement le fichier source dans un traducteur, on traduit souvent aussi les noms de variables et les mots-clés logiques (if/for), ce qui peut rendre le code inutilisable.”
Analyse des causes profondes
Reconnaissance au niveau AST (Arbre Syntaxique Abstrait)
L’IA Shangyi ne se contente pas de faire des correspondances par expressions régulières, elle effectue aussi une analyse syntaxique légère. Pour Python, elle identifie précisément les docstrings délimitées par `'''...'''` ; Pour Java/JS, il est capable de reconnaître les blocs `/**...*/`.
Instruction à conserver
À l'intérieur des blocs de commentaires, pour des instructions spécifiques telles que `@param`, `@return`, `@author`, etc., le système conserve l’en-tête de l’instruction et ne traduit que la description qui suit, afin de garantir le respect du format lors de la génération de la documentation API (comme Javadoc, Sphinx).
Résumé de la solution finale
Facilite la génération rapide d’une documentation multilingue pour les projets open source, en réduisant la barrière à la contribution des développeurs du monde entier.