diff options
author | wlemb <wlemb> | 2002-02-03 21:38:45 +0000 |
---|---|---|
committer | wlemb <wlemb> | 2002-02-03 21:38:45 +0000 |
commit | c86a7e2260cb1395fd10cf0efd645f98ec4f7f3c (patch) | |
tree | d17af735e393aa019fbcb5730217d9f177bdf9bd /tmac/trace.tmac | |
parent | d7c0243c3078cc4c8294ab7f93e94077e1077237 (diff) | |
download | groff-c86a7e2260cb1395fd10cf0efd645f98ec4f7f3c.tar.gz |
Added three new requests `ds1', `as1', and `ami'. The former two
are equivalent to `ds' and `as' with the difference that
compatibility mode is saved on entry, switched off during string
expansion, and restored on exit. The latter is the pendant to `dei'
for `am'.
(do_define_string): Use `define_mode' and `calling mode'.
Insert COMPATIBLE_SAVE and COMPATIBLE_RESTORE at the beginning and
end of string, respectively.
(define_string, append_string): Use `calling_mode'.
(define_nocomp_string, append_nocomp_string,
define_string_indirect): New functions.
(init_input_requests): Updated.
* NEWS, man/groff_diff.man, man/groff.man: Document it.
* src/preproc/eqn/box.cc (box::top_level, box::extra_space): Use
`as1' for assigning LINE_STRING (this is `10' usually). Sun's
mm macro package accesses this string register directly.
* src/preproc/eqn/main.cc (inline_equation): Use `as1'.
* tmac/trace.tmac: Trace calls to `am' also. Make it work in
compatibility mode.
Diffstat (limited to 'tmac/trace.tmac')
-rw-r--r-- | tmac/trace.tmac | 43 |
1 files changed, 34 insertions, 9 deletions
diff --git a/tmac/trace.tmac b/tmac/trace.tmac index 143f9540..7019f030 100644 --- a/tmac/trace.tmac +++ b/tmac/trace.tmac @@ -2,28 +2,53 @@ .\" .\" Load this before a macro package that you want to trace. . +.nr _C \n(.C +.cp 0 +. .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]\\ +. do !!de \$1 +. ie "\$1"\\$0" .tm *** de trace enter: \\$0 \\$@ +. el .tm *** de trace enter \$1: \\$0 \\$@ +. do nop \\*[!!\$1]\\ . ie "\$1"\\$0" .tm *** trace exit: \\$0 \\$@ . el .tm *** 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" .tm *** am trace enter: \\$0 \\$@ +. el .tm *** am trace enter \$1: \\$0 \\$@ +. do nop \\*[!!\$1]\\ +. ie "\$1"\\$0" .tm *** trace exit: \\$0 \\$@ +. el .tm *** trace exit \$1: \\$0 \\$@ +\.. +. +. do ds !!a1 !!\$1 +. do ds !!a2 \$2 +. +. do ecr +. do ami !!a1 !!a2 .. . .ec . +.cp \n(_C +. .\" EOF |