Page 1 sur 1
[EX] Programme pour remettre de l'ordre dans un code
Posté : mer. 31 déc. 2014 17:35
par Jeco
Bonjour j'ai crée ce code car je fais de nombreux copier coller et je ne pense pas tj à réaligner le code affin de remettre de l'ordre et de la clarté dans mon code
J’espère qu'il seras utile à quelqu'un d'autre et que je n'ai rien oublié
► Afficher le texte
Code : Tout sélectionner
#cs ----------------------------------------------------------------------------
AutoIt Version: 3.3.10.2
Author: Jeco
Script Function:
Permet de remettre un peu d'ordre dans un fichier .au3
#ce ----------------------------------------------------------------------------
Local $source=FileOpenDialog("ouvrir",@ScriptDir&"\","(*.au3)")
Local $file=FileOpen($Source,0)
Local $array_origi=FileReadToArray($file)
Local $taille=UBound($array_origi)
Local $array_final[$taille]
Local $nb_espace=0
Local $array_split
For $nb=0 to $taille-1
While StringLeft($array_origi[$nb],1)==" " Or StringLeft($array_origi[$nb],1)==" "
$array_origi[$nb]=StringMid($array_origi[$nb],2)
WEnd
$array_split=StringSplit($array_origi[$nb]," ",2)
If UBound($array_split)>0 Then
If StringUpper($array_split[0])=="IF" And Not(StringUpper($array_split[UBound($array_split)-1])=="THEN") Then
$array_final[$nb]=espace($nb_espace)&$array_origi[$nb]
Else
Switch StringUpper($array_split[0])
Case "IF","WHILE","FOR","DO","FUNC","WITH","SWITCH","SELECT"
$array_final[$nb]=espace($nb_espace)&$array_origi[$nb]
$nb_espace+=1
Case "ENDIF","WEND","NEXT","UNTIL","ENDFUNC","ENDWITH","ENDSWITCH","ENDSELECT"
$nb_espace-=1
$array_final[$nb]=espace($nb_espace)&$array_origi[$nb]
Case "CASE","ELSE","ELSEIF"
$array_final[$nb]=espace($nb_espace-1)&$array_origi[$nb]
Case Else
$array_final[$nb]=espace($nb_espace)&$array_origi[$nb]
EndSwitch
EndIf
Else
$array_final[$nb]=espace($nb_espace)&$array_origi[$nb]
EndIf
Next
FileClose($file)
$file=FileOpen($source,2)
For $nb=0 to $taille-1
FileWriteLine($file,$array_final[$nb])
Next
FileClose($file)
Msgbox(0,"fin","Fin du programme =)")
Func espace($nb_final)
Local $return=""
For $nb=0 to $nb_final-1
$return&=" "
Next
return $return
EndFunc
Re: [EX] Programme pour remettre de l'ordre dans un code
Posté : mer. 31 déc. 2014 18:19
par orax
CTRL+t depuis SciTE ?

Re: [EX] Programme pour remettre de l'ordre dans un code
Posté : mer. 31 déc. 2014 18:29
par Jeco
Genrrrrre si c'est vrai je me suis fais chier pour rien mais sur mon PC sa fait qu'inverser la ligne ou ya le curseur avec celle d'avant
Re: [EX] Programme pour remettre de l'ordre dans un code
Posté : mer. 31 déc. 2014 19:03
par orax
Hum... T'as bien SciTE4AutoIt ou simplement SciTE ? Dans le menu tools (ou outils si le pack FR est installé) il y a Tidy AutoIt Source CTRL+T. Donc le raccourci ctrl+t devrait mettre en forme le code.
Re: [EX] Programme pour remettre de l'ordre dans un code
Posté : mer. 31 déc. 2014 19:22
par Jeco
Lorsqu'il est lancé ya écrit Scite-Lite
mais au moins ce code sera utile pour ce qui n'ont pas Scite4 ?
Re: [EX] Programme pour remettre de l'ordre dans un code
Posté : jeu. 01 janv. 2015 17:00
par orax
Quand on fait ctrl+t depuis SciTE4AutoIt, il exécute Tidy.exe (téléchargeable
ici). Ce programme est indépendant de SciTE et peut donc être utilisé depuis un autre éditeur.

Re: [EX] Programme pour remettre de l'ordre dans un code
Posté : jeu. 01 janv. 2015 17:58
par Jeco
Ah ouais bon bah tan pis et dsl

Re: [EX] Programme pour remettre de l'ordre dans un code
Posté : jeu. 01 janv. 2015 20:16
par orax
Ça aura été un bon exercice quand même.

Re: [EX] Programme pour remettre de l'ordre dans un code
Posté : mar. 31 mai 2016 09:43
par Numeric
Parlant d'exercice , je vous propose ceci :