Auto formatage de code vb6

Soyez le premier à donner votre avis sur cette source.

Vue 7 770 fois - Téléchargée 797 fois

Description

Cette application permet de formatter le code d'un projet VB6 de la façon la plus claire possible.
La façon dont le code est indenter est parametrable entièrement.

A noter de prochaine évolution :
- Possibilité de "couper" les lignes trop longue
- Possibilité d'éditer les modules du projet (un peu comme PrettyPrint)
- Travail sur un groupe de projet
- Amélioration et paramétrage plus fin pour les commentaires ajouter

Donnez-moi votre avis ...

Source / Exemple :


Tout est dans le ZIP

Conclusion :


Voici comment fonctionne le programme :
Il lit les fichiers constituant le projet ligne par ligne.
A chaque ligne, on la nettoie : On ôte les espaces avant, les commentaires de fin de ligne, on regroupe une ligne "splittée", etc ...
On recherche ensuite le type de ligne : If ..., Private Sub ..., For ..., etc ... afin de déterminer le nombre de ligne blanche à mettre avant et après, et le nombre d'indentation à mettre avant et après aussi.
A noter que l'on peut regrouper des types de lignes (Par exemple, les lignes de déclaration de variable -Dim S as string- seront regroupés avec les lignes de déclaration de Sub qui normalement sont suivies d'une ligne vierge)
On réécrit ensuite la ligne en fonction de ces infos, en rajoutant éventuellement le commentaire de fin de ligne, en "splittant" éventuellement les liste d'arguments, etc ...

Le code est assez bien commenté et tout le gros du travail est fait par les deux procédure ProcessFile() et GetLineStyle(), le reste c'est pour faire du joli et optimiser le traitement

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

FMatrix07
Messages postés
233
Date d'inscription
mercredi 26 février 2003
Statut
Membre
Dernière intervention
21 février 2009
-
Hello crenaud76
je me suis premis de modifier ta source que je trouve trop

lien http://www.vbfrance.com/code.aspx?ID=40169

Dans le cas ou tu y vois un inconvénient fais moi signe, je la ferai supprimer

Beau boulot

@+
FMATRIX07
crenaud76
Messages postés
4172
Date d'inscription
mercredi 30 juillet 2003
Statut
Membre
Dernière intervention
9 juin 2006
18 -
J'avais presque oublié ce bout de code ... va falloir que je me remette dessus pour paufiner la chose ...
Clad49
Messages postés
265
Date d'inscription
dimanche 3 août 2003
Statut
Membre
Dernière intervention
29 mars 2010
-
Que dire de plus appart génial !

Il remet ton code en place sans rien changer !
Ton code respire mieu ! (surtout mieu lisible :))

Bon boulot

Clad
cs_max12
Messages postés
1491
Date d'inscription
dimanche 19 novembre 2000
Statut
Modérateur
Dernière intervention
7 juillet 2014
-
Sa l'air très bien, sauf l'éditeur qui faudrais changer et faire la gestion d'error.

@+
cs_dragon
Messages postés
2336
Date d'inscription
samedi 14 juillet 2001
Statut
Membre
Dernière intervention
5 mai 2009
3 -
un coup partie, tu peut tu faire une enthête, pour les fonction (Function), les procdure (Sub), les forms, les modules ....

'Function : .........
'Éléments reçu : ........
'Élément renvoyé : ......
'Retourne : ...........
'Élément optionnel : .............
'Description : à remplir
'Version : 1.0

et en même temps, de renommer le nom des control d'après les normes de micresoft (vas sur l,aide tu devrais trouver) un bouton dois toujours débuter par btm, une form par frm, un label lbl, ...... Par contre va faloir faire attention si une forme vas chercher des info situer sur une autre form

ah oui, les constante, toujours en majuscule et les variable toujours en minuscule


ça pourrasi être bien de pouvoir lire à partir d,une textbox pour les application VBA. on copie et on colle dasn nu texte box, ça formate, puis on recolle dans le code

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.