Menu * { Auto Indenter:AIndent } Alias AIndent dialog -md AIndent AIndent Dialog AIndent { title "Auto Indenter" size -1 -1 312 207 option dbu edit "", 1, 19 12 275 134, autohs vsbar return multi box "The script", 2, 9 3 294 156 button "Clear", 3, 95 176 37 12 button "Ident", 4, 156 176 37 12 box "Control", 5, 85 166 121 30 } ON *:DIALOG:AIndent:SCLICK:*:{ if ($did == 3) did -r $dname 1 elseif ($did == 4) { var %i 0 while (%i < $did($dname,1).lines) { inc %i writeini AIndent.ini SCRIPT %i $did($dname,1,%i) } AIndent2 } } Alias AIndent2 { set %Spacing 0 var %i 0 while (%i < $ini(AIndent.ini,SCRIPT,0)) { inc %i if (%i == 2) set %Spacing 1 if ($chr(125) isin $right($readini(AIndent.ini,n,SCRIPT,$ini(AIndent.ini,SCRIPT,%i)),3)) dec %Spacing write AIndent.txt $str($str($chr(160),2),%Spacing) $+ $readini(AIndent.ini,n,SCRIPT,$ini(AIndent.ini,SCRIPT,%i)) if ($chr(123) isin $right($readini(AIndent.ini,n,SCRIPT,$ini(AIndent.ini,SCRIPT,%i)),3)) inc %Spacing } run AIndent.txt AIndent3 } Alias AIndent3 { .timer 1 1 .remove AIndent.txt .timer 1 1 .remove AIndent.ini }