Mercurial > repo
annotate lib/kps/labels.pl @ 12274:3c04e9ef7a3a draft
<kspalaiologos> `` cp -rf /hackenv/tmp/asmbf-1.2.7/bin/* /hackenv/lib/kps/
author | HackEso <hackeso@esolangs.org> |
---|---|
date | Tue, 31 Dec 2019 17:47:30 +0000 |
parents | |
children |
rev | line source |
---|---|
12274
3c04e9ef7a3a
<kspalaiologos> `` cp -rf /hackenv/tmp/asmbf-1.2.7/bin/* /hackenv/lib/kps/
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
1 #!/usr/bin/perl |
3c04e9ef7a3a
<kspalaiologos> `` cp -rf /hackenv/tmp/asmbf-1.2.7/bin/* /hackenv/lib/kps/
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
2 |
3c04e9ef7a3a
<kspalaiologos> `` cp -rf /hackenv/tmp/asmbf-1.2.7/bin/* /hackenv/lib/kps/
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
3 # asm2bf label preprocessor. |
3c04e9ef7a3a
<kspalaiologos> `` cp -rf /hackenv/tmp/asmbf-1.2.7/bin/* /hackenv/lib/kps/
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
4 # C'mon, who doesn't love regexes? |
3c04e9ef7a3a
<kspalaiologos> `` cp -rf /hackenv/tmp/asmbf-1.2.7/bin/* /hackenv/lib/kps/
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
5 |
3c04e9ef7a3a
<kspalaiologos> `` cp -rf /hackenv/tmp/asmbf-1.2.7/bin/* /hackenv/lib/kps/
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
6 $n=0;%o=();$_=do{local$/;<>};s/^[ \t]*@([A-Za-z_]+[A-Za-z0-9_]*).*$/$o{$1}=++$n;'lbl '.$n."\n";/gem; |
3c04e9ef7a3a
<kspalaiologos> `` cp -rf /hackenv/tmp/asmbf-1.2.7/bin/* /hackenv/lib/kps/
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
7 s/(%([A-Za-z_]+[A-Za-z0-9_]*)|"[^"\n]*%([A-Za-z_]+[A-Za-z0-9_]*))/substr($1,0,1)eq'"'?$1:%o{substr$1,1}/ge;print; |