summaryrefslogtreecommitdiffstats
path: root/contrib/groff/tmac/trace.tmac
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/groff/tmac/trace.tmac')
-rw-r--r--contrib/groff/tmac/trace.tmac54
1 files changed, 43 insertions, 11 deletions
diff --git a/contrib/groff/tmac/trace.tmac b/contrib/groff/tmac/trace.tmac
index 143f954..c341b76 100644
--- a/contrib/groff/tmac/trace.tmac
+++ b/contrib/groff/tmac/trace.tmac
@@ -2,28 +2,60 @@
.\"
.\" 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
-. ecs
+. do ecs
. ec
-. !!de \$1
-. ie "\$1"\\$0" .tm *** trace enter: \\$0 \\$@
-. el .tm *** trace enter \$1: \\$0 \\$@
-. nop \\*[!!\$1]\\
-. ie "\$1"\\$0" .tm *** trace exit: \\$0 \\$@
-. el .tm *** trace exit \$1: \\$0 \\$@
+. 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 \\$@
\..
.
-. ds !!d1 !!\$1
-. ds !!d2 \$2
+. do ds !!d1 !!\$1
+. do ds !!d2 \$2
.
-. ecr
-. dei !!d1 !!d2
+. 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
OpenPOWER on IntegriCloud