Colorisation syntaxique de code vb6 (html)

Description

Bonjour,

Je sais que certaines sources existent sur le site, pour le faire...
mais je voulais faire ma version, que je puisse facilement intégrer dans mes projets.
elle colorie :
- les chaines de caractères
- les numériques
- les numéros des lignes
- les étiquettes (destinations des GoTo)
- les commentaires
- les mots clés
- une liste de mos clé 'perso'

Il s'agit d'un module de classe qui enrichit un code source VB de balises de formatage HTML.

Le but ? pouvoir exporter du code VB6 coloré, vers le presse papier, des fichiers de documentation, etc.

J'ai tenté de faire quelque chose de rapide... et de personnalisable

Le zip inclu une feuille de test, qui permet de vous montrer la mise en oeuvre de la classe CSyntaxHighlighter.
le but de cette feuille n'est nullement d'être un visionneur de code source... c'est juste, une DEMO ^^

Source / Exemple :


Public Sub ColorizeFile(ByRef vsFilePath As String)
Dim ConvertVB6ToHTML As String
Dim sContent As String
Dim iFile As Integer

    '# Pas top de mettre cela ici, coté perfs...
    '# c'est juste pour que les changements du fichier custom.txt
    '# soit pris en compte au prochain coloriage.
    moSyntax.AddCustomKeywords App.Path & "\custom.txt"

    iFile = FreeFile
    Open vsFilePath For Input Lock Write As #iFile
        sContent = Input(LOF(iFile), #iFile)
    Close #iFile

    CcWeb.Document.body.innerHTML = moSyntax.Convert(sContent)
End Sub

Conclusion :


J'ai tenté d'être exhaustif, merci de me signaler les syntaxes / mots clé qui ne seraient pas colorés...
ca ne concerne pas le fichier Custom qui n'est là qu'a titre d'exemple... libre a vous de l'enrichir comme bon vous semblera.

voici comment cela fonctionne :

le but est d'établir une cartographie du code a convertir.
on isole les commentaires, les chaines de caractère, etc.

ensuite, on parcoure le tableau qui sert pour la carte, et on ajoute les balises HTML adéquates...

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.