NetBSD/gnu/dist/groff/tmac/trace.tmac

62 lines
1.0 KiB
Plaintext

.\" trace.tmac
.\"
.\" Load this before a macro package that you want to trace.
.
.nr _C \n(.C
.cp 0
.
.do ds !!sp " \"
.
.eo
.
.rn de !!de
.
.
.!!de de
. do ecs
. ec
. do !!de \$1
. ie "\$1"\\$0" .do tm1 "\\*[!!sp]*** de trace enter: \\$0 \\$@
. el .do tm1 "\*[!!sp]*** trace enter \$1: \\$0 \\$@
. do as !!sp " \"
. do nop \\*[!!\$1]\\
. do substring !!sp 1
. ie "\$1"\\$0" .do tm1 "\\*[!!sp]*** trace exit: \\$0 \\$@
. el .do tm1 "\*[!!sp]*** trace exit \$1: \\$0 \\$@
\..
.
. do ds !!d1 !!\$1
. do ds !!d2 \$2
.
. do ecr
. do dei !!d1 !!d2
..
.
.rn am !!am
.
.!!am am
. do ecs
. ec
. do !!am \$1
. ie "\$1"\\$0" .do tm1 "\\*[!!sp]*** am trace enter: \\$0 \\$@
. el .do tm1 "\*[!!sp]*** am trace enter \$1: \\$0 \\$@
. as !!sp " \"
. do nop \\*[!!\$1]\\
. substring !!sp 1
. ie "\$1"\\$0" .do tm1 "\\*[!!sp]*** trace exit: \\$0 \\$@
. el .do tm1 "\*[!!sp]*** trace exit \$1: \\$0 \\$@
\..
.
. do ds !!a1 !!\$1
. do ds !!a2 \$2
.
. do ecr
. do ami !!a1 !!a2
..
.
.ec
.
.cp \n(_C
.
.\" EOF