rendered paste bodyMenu * {
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
}