diff options
author | Werner LEMBERG <wl@gnu.org> | 2002-02-03 21:38:47 +0000 |
---|---|---|
committer | Werner LEMBERG <wl@gnu.org> | 2002-02-03 21:38:47 +0000 |
commit | 0a757691e08e8b48f642922444adae0e0ecee78d (patch) | |
tree | f4ad36bf4faa4f0512627f807714c3a2aafcaef5 /tmac/trace.tmac | |
parent | 99856a7fe5b02685a518fbb2878f32af5b5a7f2f (diff) | |
download | groff-git-0a757691e08e8b48f642922444adae0e0ecee78d.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 143f95400..7019f0302 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 |