# quizz.sed - this program does something, but what? # (don't worry, I'll post the commented version later on) x 1s/^/0 / s/ /v / :a /^v/{ s//1/ b b } s/v/v0123456789p / s/\([^v]\)v[^ ]*\1\(.\)[^ ]* /\2/ /^[^ ]*p/{ s/p/v0/ b a } :b x :p s/^[ ]*// s/^#.*// /^\.[:@();|<>_]/{ s//&:n@o(p)q;r|su_v / s/^.\(.\)[^ ]*\1\([^ ]\)[^ ]* /,\2/ :j H s/..// x s/^\([^ ]* .*\)\n\(..\).*/\1\2/ x b p } s/^\.$/e/ /^\./b j /^[^pqvxefi.`]/{ x s/ .*/:/ s/^/Syntax error line / G p s/.*\n.*// q } /./{ H s/.// x s/^\([^ ]* .*\)\n\(.\).*/\1\2/ x b p } $!d x s/[^ ]* // s/$/|;/ s/^/_/ :d s/_\([^`]\)/<\1/ s/_`q// s/_`X/X@>/ s/_`F/Gr@>/ s/_`G/`:`s@>/ /_/b d :e s/\([^@]@@*>\)\([FQX]*[`G][FQX]*[a-z]\([FQX]*[`G][FQX]*[a-z]\)*\)/\2\1/ s/\([^@]\)\(@@*>\)\([FQX]*[`G]\)/\3\1@\2/ s/\([^@]\)@\(@*>\)\([FQX]*[.,].\)/\3\1\2/ s/\([^@]\)@\(@*>\)\([FQX]*%n*%\)/\3\1\2/ s/\([^@]\)@\(@*>\)\([FQX]*[a-z]\)/\3\1\2/ /@>./b e /@>$/b i s/X>/X:_/ s/r>/_/ s/t>/t:_/ /_/b d /s>/{ s//s:t@>/ b e } /u>/{ s//<;/ b h } /m>/{ s//)/{ s/p>/;/ s/\([^;]*\);\([^;]*\);\([^|]*\)|\(n*\)/\1`:<\2%\4n%\3|\4n;;(\1;\3)|\4/ b f } /P>/{ s/P>/;/ s/\([^;]*\);\(n*;[^;]*\);\([^|]*\)/P:<\2(\1\3)/ b g } b i :f s/(\([^%)]*%\(n*\)%[^%)]*\)\(.*|\2;\)/\1(\3n/ s/(\([^%)]*\))/\1/ /(/!b h :g s/([^%)]*%\(n*\)%[^%)]*\(.*|\1;\)n/(\2/ s/([^%)]*%\(n*\)%[^%)]*\(.*\)|\1;;\([^|]*\)|/(\2(\3)|/ s/([^%)]*)// /(/b g :h s/:\([^:]*\)/ s/X:/ s/i:/ s/t:/ s/%\(n*\)%:/ />/b e s/f:u_v/ s/\n\(.\).*\(.\)\1.*/\2/ x } /P: