rendered paste bodyalias gilenc {
write -c chr.txt
write -c output.txt
var %g 1,%r = $!r(1,3)
while (%g <= 255) {
write chr.txt %g $($!iif( [ %r ] == 1,$r(A,Z),$r(a,z)) $!+ $!iif( [ %r ] == 2,$r(a,z),$r(A,Z)) $!+ $!iif( [ %r ] == 3,$r(0,9),$iif($r(1,2) == 1,$r(a,z),$r(A,Z))),2)
inc %g
}
}
alias encG {
gilenc
if ($lines(input.txt) > 0) {
var %n 1,%lines = $v1
while (%n <= %lines) {
var %m 1,%len = $len($read(input.txt,%n))
while (%m <= %len) {
var %mid = $asc($mid($read(input.txt,%n),%m,1))
var %tmp = $instok(%tmp,$replace(%mid,%mid,$read(chr.txt,sn,%mid)),0,32)
if ($numtok(%tmp,32) == 10) { write output.txt %tmp | var %tmp }
inc %m
}
if (%tmp) write output.txt %tmp
var %tmp
write output.txt $read(chr.txt,sn,13)
inc %n
}
}
sortG
}
alias sortG {
var %t 1,%lines = $lines(output.txt)
while (%t <= %lines) {
var %g 1
while ($gettok($read(output.txt,%t),%g,32)) {
var %tt = $instok(%tt,$v1,0,32)
if ($numtok(%tt,32) == 10) { write tmpG.txt %tt | var %tt }
inc %g
}
inc %t
}
if (%tt) write tmpG.txt %tt
filter -cff tmpG.txt output.txt
.remove tmpG.txt
}
alias solG {
var %s 1,%l = $lines(output.txt)
while (%s <= %l) {
var %o 1,%len = $numtok($read(output.txt,%s),32)
while (%o <= %len) {
var %tok = $token($read(output.txt,%s),%o,32)
var %tmp = %tmp $+ $replace(%tok,%tok,$chr($gettok($read(chr.txt,r,\d+ %tok),1,32))) $+ $chr(32)
if (%tok == $read(chr.txt,sn,13)) { write output.txt %tmp | var %tmp }
inc %o
}
inc %s
}
}