aat

git mirror of https://ccx.te2000.cz/bzr/aat
git clone https://ccx.te2000.cz/git/aat
Log | Files | Refs | README

aat_macros.sed (1065B)


      1 #!/bin/sed -f
      2 s/^[[:space:]]*FOR[[:space:]]\+\([[:alnum:]]\+\)[[:space:]]\+IN[[:space:]]\+\(.\+\)$/for(last in \2){};for(key in \2){\n\1 = \2[key]; is_last = key == last/
      3 s/^[[:space:]]*ENDFOR[[:space:]]*$/}/
      4 s/^[[:space:]]*IF[[:space:]]\+\(.\+\)$/if(\1) {\n/
      5 s/^[[:space:]]*ELIF[[:space:]]\+\(.\+\)$/} else if(\1) {\n/
      6 s/^[[:space:]]*ELSE[[:space:]]*$/} else {/
      7 s/^[[:space:]]*ENDIF[[:space:]]*$/}/
      8 
      9 s/^[[:space:]]*@for[[:space:]]\+\([[:alnum:]]\+\)[[:space:]]\+in[[:space:]]\+\(.\+\)$/for(_loop_\1=loop_start("\2", "\1."); loop_iter(_loop_\1);) {/
     10 s/^[[:space:]]*@for[[:space:]]\+\([[:alnum:]]\+\)[[:space:]]\+var[[:space:]]\+\(.\+\)$/for(_loop_\1=loop_start(\2, "\1."); loop_iter(_loop_\1);) {/
     11 s/^[[:space:]]*@endfor[[:space:]]*$/} loop_end()/
     12 s/^[[:space:]]*@if[[:space:]]\+\(.\+\)$/if(get("\1")) {\n/
     13 s/^[[:space:]]*@elif[[:space:]]\+\(.\+\)$/} else if(get("\1")) {\n/
     14 s/^[[:space:]]*@else[[:space:]]*$/} else {/
     15 s/^[[:space:]]*@endif[[:space:]]*$/}/
     16 #s/^[[:space:]]*@let[[:space:]]\+\([a-zA-Z_][a-zA-Z0-9_]*\)[[:space:]]*=[[:space:]]*\(.*\)$/V["\1"] = \2\n/