2BSD/src/pascal/opcodes/maketrdata
ed - trdata
v/ .* /d
1,$s/.* .* //
1,$s/.*/ "&",/
$s/,//
1i
#ifdef PI1
char *opnames[]
{
0,
.
$a
};
#endif
.
w .foefum
e trdata
v/./d
g/ .* /s/ [^ ]*$//
g/^[^ ]* /s///
g/"/s//\\"/
1,$s/.*/ "&",/
$s/,//
1i
char *trdesc[]
{
0,
.
$a
};
.
$r .foefum
w .foefum
e trdata
v/./d
1,$s/ .*//
1,$s/.*/ "&",/
$s/,//
1i
#include "whoami"
#include "0.h"
#ifdef PI1
#ifdef DEBUG
char *trnames[]
{
0,
.
$a
};
#endif
#endif
.
$r .foefum
!rm .foefum
w TRdata.c
e trdata
v/./d
g/ .*/s///
w .foefum
!grep -n "^" .foefum >.fiefum
e .fiefum
1,$s/\([0123456789]*\):\(.*\)/#define T_\2 \1/
w tree.h
!rm .fiefum .foefum
q
ed - TRdata.c
/opnames/;/^}/w x.c
q
cc -O -c x.c
mv x.o TRdata.o
: rm x.c