summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwl <wl>2010-02-08 16:42:52 +0000
committerwl <wl>2010-02-08 16:42:52 +0000
commitb01177faef3a09ca239f6247ce36cb2e07901a07 (patch)
treede3c7636dc7c3271d84f13a235c8f22d561c820d
parent800b0fe6a9aca79b2bd8e9edf53a30ce422c3a3f (diff)
downloadgroff-b01177faef3a09ca239f6247ce36cb2e07901a07.tar.gz
Fix last patch and use `t*' prefix for all non-public stuff.
Other minor fixes. * hdmisc.tmac (getarg, index, SP, P1, \n[s], \n[v], \n[hy], pv, DI): Rename to... (t*getarg, t*index, t*SP, t*P1, \n[t*s], \n[t*v], \n[t*hy], t*pv, t*DI): This. Update all callers. (t*EM): New auxiliary macro (using stuff from `examples/common.roff'. * hdtbl.tmac (\n[t*v], \n[t*s], \n[t*hy], \n[t*l]): Initialize. (\n[t*FN], \n[t*LN]): New number registers. * examples/*.roff: Updated. * examples/common.roff: Load `hdtbl.tmac' earlier. Reinstall `HM' and `BM' traps. Provide `SP' macros if not defined by other macro package. (\n[p], \n[o]): Initialize. (\*[t*HM], \*[t*BM]): Initialize. (EM): Use `t*EM'. Updated. * examples/fonts_n.in, examples/fonts_x.in: Load `examples/common.roff'. Updated. * groff_hdtbl.man: Document setup of default values. Document `t*EM'.
-rw-r--r--contrib/hdtbl/ChangeLog32
-rw-r--r--contrib/hdtbl/examples/col_rowspan_colors.roff2
-rw-r--r--contrib/hdtbl/examples/common.roff35
-rw-r--r--contrib/hdtbl/examples/fonts_n.in5
-rw-r--r--contrib/hdtbl/examples/fonts_x.in5
-rw-r--r--contrib/hdtbl/examples/rainbow.roff4
-rw-r--r--contrib/hdtbl/groff_hdtbl.man49
-rw-r--r--contrib/hdtbl/hdmisc.tmac72
-rw-r--r--contrib/hdtbl/hdtbl.tmac102
9 files changed, 210 insertions, 96 deletions
diff --git a/contrib/hdtbl/ChangeLog b/contrib/hdtbl/ChangeLog
index 139a0dee..4b42cf89 100644
--- a/contrib/hdtbl/ChangeLog
+++ b/contrib/hdtbl/ChangeLog
@@ -1,3 +1,35 @@
+2010-02-08 Larry Kollar <kollar@alltel.net>
+
+ Fix last patch and use `t*' prefix for all non-public stuff.
+ Other minor fixes.
+
+ * hdmisc.tmac (getarg, index, SP, P1, \n[s], \n[v], \n[hy], pv, DI):
+ Rename to...
+ (t*getarg, t*index, t*SP, t*P1, \n[t*s], \n[t*v], \n[t*hy], t*pv,
+ t*DI): This.
+ Update all callers.
+ (t*EM): New auxiliary macro (using stuff from
+ `examples/common.roff'.
+
+ * hdtbl.tmac (\n[t*v], \n[t*s], \n[t*hy], \n[t*l]): Initialize.
+ (\n[t*FN], \n[t*LN]): New number registers.
+
+ * examples/*.roff: Updated.
+ * examples/common.roff: Load `hdtbl.tmac' earlier.
+ Reinstall `HM' and `BM' traps.
+ Provide `SP' macros if not defined by other macro package.
+ (\n[p], \n[o]): Initialize.
+ (\*[t*HM], \*[t*BM]): Initialize.
+ (EM): Use `t*EM'.
+ Updated.
+
+ * examples/fonts_n.in, examples/fonts_x.in: Load
+ `examples/common.roff'.
+ Updated.
+
+ * groff_hdtbl.man: Document setup of default values.
+ Document `t*EM'.
+
2010-01-23 Larry Kollar <kollar@alltel.net>
Break out example formatting to a separate file.
diff --git a/contrib/hdtbl/examples/col_rowspan_colors.roff b/contrib/hdtbl/examples/col_rowspan_colors.roff
index 5460dbef..2d892083 100644
--- a/contrib/hdtbl/examples/col_rowspan_colors.roff
+++ b/contrib/hdtbl/examples/col_rowspan_colors.roff
@@ -58,7 +58,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. color#
. as html " \\*[help] ".TR height=\\nW" ".TD colspan=\\nI bgc=c\\n#"
.\}
-.P1 \\*[html]
+.t*P1 \\*[html]
..
.
.pv 1.2 1.2 "" x
diff --git a/contrib/hdtbl/examples/common.roff b/contrib/hdtbl/examples/common.roff
index e14caeaa..c4857d38 100644
--- a/contrib/hdtbl/examples/common.roff
+++ b/contrib/hdtbl/examples/common.roff
@@ -24,6 +24,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
..
.
.
+.mso hdtbl.tmac\" load table macros
+.
.\" ******************************************************************
.\" ** Some macros and the page setup used by the examples **
.\" ******************************************************************
@@ -50,7 +52,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
tal=c \
"width=(\\n[*w*]+4n)<?\n[.l]"
. TR .TD
-. P1 \\$*
+. t*P1 \\$*
. ETB
. SP
..
@@ -101,7 +103,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. shift
.
. while \\n-[PN\\n[*pn]] \
-. P1 \\$@
+. t*P1 \\$@
.
. nr *pn -1
..
@@ -282,9 +284,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
.
.nr s \n[.ps]
.nr v \n[.v]
+.nr p \n[.p]
+.nr o \n[.o]
.pv 1.2 1.2 "" X
.nr l 6.6i \" set text width
-.ll \n[l]u
+.ll \n[t*l]u
.nr o 2c \" set offset
.po \n[o]u
.nr p 29.7c \" set paper length (A4)
@@ -292,8 +296,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
.nr tH 1i \" set top margin
.sp |\n[tH]u
.
+.ds t*HM //arbitrary text for page header, except on the first page//\"
+.ds t*BM //arbitrary text for page footer, except on the last page/\\n[%]/\"
+.
.ev 99
-.lt \n[l]u
+.lt \n[t*l]u
.ev
.
.
@@ -315,27 +322,21 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
.
.de EM
. rm BM \" no page number at bottom of last page
-.
-. if !"\\*[t*kept]"" \{\
-. tm1 "hdtbl: Not all tables have been printed.
-. tm1 " Add `.bp' at the end of your document.
-. \}
-. if !"\\*[t*held]"" \{\
-. tm1 "hdtbl: There are held tables which haven't been printed.
-. tm1 " Add `.t*free' at the end of your document.
-. \}
-. if \\n[t*#] \
-. tm hdtbl: Missing `.ETB' macro at end of document.
+. t*EM
..
.
.
+.wh 0 HM
+.wh 0-1.5i BM
.em EM
.
+.\" Some packages (-mm) define their own .SP macro.
+.\" Use ours if another one isn't already available.
+.if !d SP .als SP t*SP
+.
.if "\n[.m]"" \
. gcolor black
.if "\n[.M]"" \
. fcolor white
.
-.mso hdtbl.tmac\" load table macros
-.
.\" EOF
diff --git a/contrib/hdtbl/examples/fonts_n.in b/contrib/hdtbl/examples/fonts_n.in
index d11a84bb..0daa599b 100644
--- a/contrib/hdtbl/examples/fonts_n.in
+++ b/contrib/hdtbl/examples/fonts_n.in
@@ -34,6 +34,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
.\" ** without arg: glyphs and codes of active font. **
.\" ******************************************************************
.
+.so examples/common.roff
.time start
.
.if !d fontpath \
@@ -67,7 +68,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. continue
. \}
.
-. index "\\*[*f]" \\*[*$1]
+. t*index "\\*[*f]" \\*[*$1]
.
. ie (\\n[.y] > 18) \
. if !F \\*[*$1] \{\
@@ -75,7 +76,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. continue
. \}
. el \{\
-. if !\\n[index] \{\
+. if !\\n[t*index] \{\
. tm \\n[.F]:\\n[.c]: Font \\*[*$1] not found.
. continue
. \}
diff --git a/contrib/hdtbl/examples/fonts_x.in b/contrib/hdtbl/examples/fonts_x.in
index fa534575..4360cc2d 100644
--- a/contrib/hdtbl/examples/fonts_x.in
+++ b/contrib/hdtbl/examples/fonts_x.in
@@ -34,6 +34,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
.\" ** without arg: glyphs and codes of active font. **
.\" ******************************************************************
.
+.so examples/common.roff
.time start
.
.if !d fontpath \
@@ -67,7 +68,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. continue
. \}
.
-. index "\\*[*f]" \\*[*$1]
+. t*index "\\*[*f]" \\*[*$1]
.
. ie (\\n[.y] > 18) \
. if !F \\*[*$1] \{\
@@ -75,7 +76,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. continue
. \}
. el \{\
-. if !\\n[index] \{\
+. if !\\n[t*index] \{\
. tm \\n[.F]:\\n[.c]: Font \\*[*$1] not found.
. continue
. \}
diff --git a/contrib/hdtbl/examples/rainbow.roff b/contrib/hdtbl/examples/rainbow.roff
index fa23da09..af795471 100644
--- a/contrib/hdtbl/examples/rainbow.roff
+++ b/contrib/hdtbl/examples/rainbow.roff
@@ -34,7 +34,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. PN \\$1 \
".nr #cc +(1f / \\$1)" \
".defcolor \En[t*#] rgb \\$2 \\$3 \\$4" \
- ".TBL csp=\n[l]/(12*\\$1+2) border= cpd=0 bgc=\\\\n[t*#] bc=" \
+ ".TBL csp=\n[t*l]/(12*\\$1+2) border= cpd=0 bgc=\\\\n[t*#] bc=" \
".if (\\\\n+[*#] == 1) \
.CPTN Rainbow Colors \[em] Nested Tables with Colored Backgrounds \
val=b" \
@@ -65,7 +65,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. PN \\$1 \
".nr #cc +(1f / \\$1)" \
".defcolor \En[t*#] rgb \\$2 \\$3 \\$4" \
- ".TBL border=\n[l]/(12*\\$1+2) csp=0 cpd=0 bc=\\\\n[t*#] bgc=" \
+ ".TBL border=\n[t*l]/(12*\\$1+2) csp=0 cpd=0 bc=\\\\n[t*#] bgc=" \
".if (\\\\n+[*#] == 1) \
.CPTN Rainbow Colors \[em] Nested Tables with Colored Borders \
val=b" \
diff --git a/contrib/hdtbl/groff_hdtbl.man b/contrib/hdtbl/groff_hdtbl.man
index b47a4f82..2d553bcc 100644
--- a/contrib/hdtbl/groff_hdtbl.man
+++ b/contrib/hdtbl/groff_hdtbl.man
@@ -897,6 +897,30 @@ argument above.
.
.SH HDTBL CUSTOMIZATION
.
+.PP
+Before creating the first table,
+you should configure default values
+to minimize the markup
+needed in each table.
+The following example
+sets up defaults
+suitable for typical papers:
+.PP
+.RS
+.nf
+.CR ".ds t*bgc white\e\[dq] background color
+.CR ".ds t*fgc black\e\[dq] foreground color
+.CR ".ds t*bc black\e\[dq] border color
+.CR ".nr t*cpd 0.1n\e\[dq] cell padding
+.fi
+.RE
+.PP
+The file
+.B examples/common.roff
+provides another example setup
+in the ``minimal Page setup'' section.
+.
+.PP
A table which does not fit on a partially filled page is printed
automatically on the top of the next page if you append the little
utility macro
@@ -918,6 +942,31 @@ if you use the
.B ms
macro package.
.
+.PP
+The macro
+.CR t*EM
+checks for held or kept tables,
+and for missing
+.CR ETB
+macros (table not closed).
+You can append this macro
+to the ``end'' macro of your document's main macro package.
+For example:
+.
+.PP
+.RS
+.nf
+.CR ".am pg@end-text"
+.CR ". t*EM"
+.CR ".."
+.fi
+.RE
+.
+.PP
+If you use the
+.B ms
+macro package.
+.
.
.SH AUTHOR
.
diff --git a/contrib/hdtbl/hdmisc.tmac b/contrib/hdtbl/hdmisc.tmac
index 4da28444..c3919be3 100644
--- a/contrib/hdtbl/hdmisc.tmac
+++ b/contrib/hdtbl/hdmisc.tmac
@@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
.
.\" %beginstrip%
.
-.if d getarg \
+.if d t*getarg \
. nx
.
.
@@ -68,7 +68,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
.\"
.\" sets string `ddd' to value `=', and `args' contains
.\" `aaa=xxx bbb eee'.
-.de getarg
+.de t*getarg
. ds \\$1
. ds args
.
@@ -146,12 +146,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
.\" Utility macro: .index <string1> <string2>
.\"
.\" Check whether <string2> is a substring of <string1> and
-.\" return its position in number register `index', starting
+.\" return its position in number register `t*index', starting
.\" with 1. If not found, return 0. If <string2> is empty,
-.\" set `index' to -999.
-.de index
+.\" set `t*index' to -999.
+.de t*index
. if "\\$2"" \{\
-. nr index -999
+. nr t*index -999
. return
. \}
.
@@ -168,23 +168,23 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. \}
.
. ie (\\n[*] == \\n[**]) \
-. nr index 0
+. nr t*index 0
. el \
-. nr index (\\n[*] + 1)
+. nr t*index (\\n[*] + 1)
..
.
.
.\" ******************************************************************
-.\" ******** non-accumulating space .SP [v] **********
+.\" ******** non-accumulating space .t*SP [v] **********
.\" ** **
.\" ** nl vor erster Seite -1, oben auf Seite 0 resp. tH **
.\" ** .k nach .sp oder .br 0, **
.\" ** sonst Laenge der angefangenen Zeile **
-.\" ** Der Merker M# fuer vorangegangenes .SP wird in .HM am **
+.\" ** Der Merker M# fuer vorangegangenes .t*SP wird in .HM am **
.\" ** Seitenanfang zurueckgesetzt. **
.\" ** ganz richtig ist .sp + .br = .br + .sp = .sp **
.\" ******************************************************************
-.de SP
+.de t*SP
. if (\\n[nl] < 0) \
. br \" start very first page
. nr * \\n[.p] \" save current page length
@@ -194,7 +194,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. el \
. pl +\\$1 \" otherwise use \\$1
.
-. nr ** (\\n[.p] - \\n[*]) \" ** now holds arg for .SP in base units
+. nr ** (\\n[.p] - \\n[*]) \" ** now holds arg for .t*SP in base units
. pl \\n[*]u \" restore page length
.
. \" we do nothing at start of new page or column
@@ -205,7 +205,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. \}
. el \{\
. if (\\n[**] - \\n[S#]) \{\
-. sp (\\n[**]u - \\n[S#]u)\" emit difference to previous .SP
+. sp (\\n[**]u - \\n[S#]u)\" emit difference to previous .t*SP
. nr S# \\n[**] \" store ** in S#
. \}\}
.
@@ -218,7 +218,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
.\" ** Perform all arguments once **
.\" ** P1 is nestable **
.\" ******************************************************************
-.de P1
+.de t*P1
. \" `while' command is about five times faster than recursion!
. while \\n[.$] \{\
. nop \\$1
@@ -229,22 +229,27 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
.
.\" ******************************************************************
.\" ** Hilfsmakro zum Einstellen von Schriftgroesse und **
-.\" ** Zeilenabstand, bezogen auf Anfangswerte \n[s] und \n[v] **
-.\" ** sowie fuer Hyphenation: **
+.\" ** Zeilenabstand, bezogen auf Anfangswerte \n[t*s] **
+.\" ** und \n[t*v] sowie fuer Hyphenation: **
.\" ** .pv s v hy# hart; macht .br **
.\" ** Bei 4. Argument setzen der Register s und v und hy. **
.\" ** Fuer angefangene Zeile die vorgefundenen Einstellungen **
+.\" ** **
+.\" ** Auxiliary macro to set internal registers for font size **
+.\" ** and line spacing, relative to initial values \n[t*s] and **
+.\" ** \n[t*v]. Optionally sets hyphenation. A fourth argument **
+.\" ** initializes internal registers to global default values. **
.\" ******************************************************************
-.de pv
+.de t*pv
. br
.
. if \\n[.$] \
-. ps (\\n[s]u * \\$1z / 1z)
+. ps (\\n[t*s]u * \\$1z / 1z)
.
. ie (\\n[.$] - 1) \
-. vs (\\n[v]u * \\$2p / 1p)
+. vs (\\n[t*v]u * \\$2p / 1p)
. el \{\
-. vs (\\n[v]u * \\$1p / 1p)
+. vs (\\n[t*v]u * \\$1p / 1p)
. return
. \}
.
@@ -252,9 +257,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. hy \\$3
.
. if !""\\$4" \{\
-. nr v \\n[.v]
-. nr s \\n[.ps]
-. nr hy \\n[.hy]
+. nr t*v \\n[.v]
+. nr t*s \\n[.ps]
+. nr t*hy \\n[.hy]
. \}
..
.
@@ -289,9 +294,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
.
.
.\" ******************************************************************
-.\" ** processs diversion **
+.\" ** process diversion **
.\" ******************************************************************
-.de DI
+.de t*DI
. nr * \\n[.u]
. nf \" diversion is already formatted - output it unchanged
. \\$1 \" output the diversion ...
@@ -300,4 +305,21 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. fi \" reactivate formatting
..
.
+.\" ******************************************************************
+.\" ** error checking at end **
+.\" ******************************************************************
+.de t*EM
+.
+. if !"\\*[t*kept]"" \{\
+. tm1 "hdtbl: Not all tables have been printed.
+. tm1 " Add `.bp' at the end of your document.
+. \}
+. if !"\\*[t*held]"" \{\
+. tm1 "hdtbl: There are held tables which haven't been printed.
+. tm1 " Add `.t*free' at the end of your document.
+. \}
+. if \\n[t*#] \
+. tm hdtbl: Missing `.ETB' macro; last .TBL in \\*[t*FN] at line \\*[t*LN].
+..
+.
.\" EOF
diff --git a/contrib/hdtbl/hdtbl.tmac b/contrib/hdtbl/hdtbl.tmac
index f3daf6e5..b9006715 100644
--- a/contrib/hdtbl/hdtbl.tmac
+++ b/contrib/hdtbl/hdtbl.tmac
@@ -55,12 +55,16 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
.nr t*csp .5n
.nr t*b .1n
.nr t*cols 1
+.nr t*v \n[.v]
+.nr t*s \n[.ps]
+.nr t*hy \n[.hy]
+.nr t*l \n[.ll]
.
.
.\" defaults for table captions
.nr t*cptn 0 1
.ds t*cptn "".sp .4" \
- ".pv 1.4 1.4" \
+ ".t*pv 1.0 1.0" \
".ad l" \
"\m[\\*[t*fgc]]Table \\n+[t*cptn]:\0\c\k*"\"
.
@@ -107,7 +111,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. \}
. nr t*# +1
.
-. getarg cols \\$@\" from here string `args' contains the rest of \\$@
+. \" Save current location for error checking at end
+. ds t*FN \\[.F]
+. ds t*LN \\[.c]
+.
+. t*getarg cols \\$@\" from here string `args' contains the rest of \\$@
. ie "\\*[cols]"" \
. nr t*cols\\n[t*#] \\n[t*cols]
. el \{\
@@ -117,7 +125,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. tm \\n[.F]:\\n[.c]: Invalid number of columns value `\\*[cols]'.
. \}
.
-. getarg cpd \\*[args] \" cell padding
+. t*getarg cpd \\*[args] \" cell padding
. ie "\\*[cpd]"" \
. nr t*cpd\\n[t*#] \\n[t*cpd]
. el \{\
@@ -127,7 +135,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. tm \\n[.F]:\\n[.c]: Invalid cell padding value `\\*[cpd]'.
. \}
.
-. getarg csp \\*[args] \" cell spacing
+. t*getarg csp \\*[args] \" cell spacing
. ie "\\*[csp]"" \
. nr t*csp\\n[t*#] \\n[t*csp]
. el \{\
@@ -137,7 +145,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. tm \\n[.F]:\\n[.c]: Invalid cell spacing value `\\*[csp]'.
. \}
.
-. getarg border \\*[args] \" border thickness
+. t*getarg border \\*[args] \" border thickness
. ie "\\*[border]"=" \
. nr t*b\\n[t*#] 0-1
. el \{\
@@ -150,7 +158,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. tm \\n[.F]:\\n[.c]: Invalid border thickness value `\\*[border]'.
. \}\}
.
-. getarg bc \\*[args] \" border color
+. t*getarg bc \\*[args] \" border color
. ds t*bc\\n[t*#] \\*[t*bc]\"
. if !"\\*[bc]"" \{\
. ie m\\*[bc] \
@@ -170,14 +178,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. ds t*bc\\n[t*#] \\*[bc]\"
. \}
.
-. getarg width \\*[args] \" table/col widths
+. t*getarg width \\*[args] \" table/col widths
. if "\\*[width]"=" \
. ds width
.
. nr b/2\\n[t*#] (\\n[t*b\\n[t*#]] / 2)\" shortcut
. nr cscp\\n[t*#] (\\n[t*csp\\n[t*#]] + \\n[t*cpd\\n[t*#]])\" aux. register
.
-. getarg height \\*[args] \" table outline height
+. t*getarg height \\*[args] \" table outline height
. ie "\\*[height]"" \
. nr t*height\\n[t*#] 0
. el \{\
@@ -192,7 +200,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. t*cl \\*[width] \" get cell widths and offsets
. t*args \\n[t*#] \" look for common arguments
.
-. getarg tal \\*[args] \" table horizontal alignment
+. t*getarg tal \\*[args] \" table horizontal alignment
. if "\\*[tal]"" \
. ds tal \\*[t*tal]\"
. ie "\\*[tal]"l" \
@@ -211,7 +219,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. nr t*r#\\n[t*#] 0 \" initialize row index
. mk toptbl\\n[t*#]
.
-. P1 \\*[args]
+. t*P1 \\*[args]
..
.
.
@@ -228,14 +236,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. return
. \}
.
-. getarg val \\$@
+. t*getarg val \\$@
. ds args\\n[t*#] "\\*[args]\"
.
-. index "\\*[args]" .TR
-. ie \\n[index] \{\
+. t*index "\\*[args]" .TR
+. ie \\n[t*index] \{\
. ds *a\\n[t*#] "\\*[args]\"
-. substring args\\n[t*#] 0 \\n[index]
-. substring *a\\n[t*#] \\n[index]-2 -1
+. substring args\\n[t*#] 0 \\n[t*index]
+. substring *a\\n[t*#] \\n[t*index]-2 -1
. \}
. el \
. ds *a\\n[t*#]
@@ -249,15 +257,15 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. el \{\
. ll (\\n[ll\\n[t*#]]u + \\n[in\\n[t*#]]u)
. in \\n[in\\n[t*#]]u
-. P1 \\*[t*cptn]
+. t*P1 \\*[t*cptn]
' in +\\n[*]u
-. P1 \\*[args\\n[t*#]]
-. pv 1 1
+. t*P1 \\*[args\\n[t*#]]
+. t*pv 1 1
. in
. mk toptbl\\n[t*#]
. \}
.
-. P1 \\*[*a\\n[t*#]]
+. t*P1 \\*[*a\\n[t*#]]
..
.
.als *CPTN CPTN
@@ -283,7 +291,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. nr c#\\*[#t#r] 0 1 \" clear cell counter
. nr dntr\\*[#t#r] 0 1 \" clear accumulated row height
.
-. getarg height \\$@
+. t*getarg height \\$@
. ie "\\*[height]"" \
. nr t*height\\*[#t#r] 0
. el \{\
@@ -297,7 +305,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. \" is too high by 3/2 b, independent of the number of TR with `height'.
. t*args \\*[#t#r] \\n[t*#] \" look for common arguments
.
-. P1 \\*[args]
+. t*P1 \\*[args]
..
.
.
@@ -309,15 +317,15 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
.\" else like .TD
.de TH
. ft 1
-. getarg hal \\$@
+. t*getarg hal \\$@
. if "\\*[hal]"" \
. ds hal c\"
.
-. getarg val \\*[args]
+. t*getarg val \\*[args]
. if "\\*[val]"" \
. ds val m\"
.
-. getarg fst \\*[args]
+. t*getarg fst \\*[args]
. if "\\*[fst]"" \
. ds fst B\"
.
@@ -336,7 +344,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. ds *#trc* \\*[#t#r]*\\n[c#\\*[#t#r]]\" table cell identifier
. \" (<level>*<row>*<column>)
.
-. getarg rowspan \\$@
+. t*getarg rowspan \\$@
. nr rowspan 1
. if !"\\*[rowspan]"" \{\
. ie \B\\*[rowspan] \{\
@@ -347,7 +355,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. tm \\n[.F]:\\n[.c]: Invalid value of `rowspan' keyword.
. \}
.
-. getarg colspan \\*[args]
+. t*getarg colspan \\*[args]
. nr colspan 1
. if !"\\*[colspan]"" \{\
. ie \B\\*[colspan] \
@@ -421,9 +429,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. ad \\*[t*hal\\*[#trc]]
. fam \\*[t*ff\\*[#trc]]
. ft \\*[t*fst\\*[#trc]]
-. pv \\*[t*fsz\\*[#trc]]
+. t*pv \\*[t*fsz\\*[#trc]]
.
-. P1 \\*[args]
+. t*P1 \\*[args]
..
.
.
@@ -454,14 +462,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. in 0 \" reset indent
. gcolor \\*[t*m\\n[t*#]] \" reset previous fgc
.
-. getarg hold \\$@
+. t*getarg hold \\$@
. if !\\n[t*#] \{\
. sp .5
. di
. in \\n[t*i]u
. ie "\\*[hold]"" \{\
. ie (\\n[.t] - \\n[dn]) \
-. DI t*tbl0
+. t*DI t*tbl0
. el \{\
. rn t*tbl0 t*tbl\\n+[t*numb]
. ds t*kept \\*[t*kept] t*tbl\\n[t*numb] \\n[dn]\"
@@ -476,7 +484,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. ev \" restore previous environment
. \}
.
-. P1 \\*[args]
+. t*P1 \\*[args]
..
.
.
@@ -513,7 +521,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
.
. ie (\\n[.t] - \\n[*]) \{\
. ev t*tbl
-. DI \\*[*]
+. t*DI \\*[*]
. ev
. \}
. el \{\
@@ -536,7 +544,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
.\" Nested tables are processed from inside to outside.
.
.de t*divs
-. ll (\\n[l]u + 1c) \" avoid warning `can't break line'
+. ll (\\n[t*l]u + 1c) \" avoid warning `can't break line'
. nf
.
. nr b/2 \\n[b/2\\n[t*#]] \" some abbreviations
@@ -886,7 +894,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. if "\\*[args]"" \
. return
.
-. getarg bgc \\*[args] \" background color
+. t*getarg bgc \\*[args] \" background color
. if !"\\*[bgc]"" \{\
. ie m\\*[bgc] \
. ds t*bgc\\$1 \\*[bgc]\"
@@ -899,7 +907,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. if "\\*[args]"" \
. return
.
-. getarg fgc \\*[args] \" foreground color
+. t*getarg fgc \\*[args] \" foreground color
. if !"\\*[fgc]"" \{\
. ie m\\*[fgc] \
. ds t*fgc\\$1 \\*[fgc]\"
@@ -912,22 +920,22 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. if "\\*[args]"" \
. return
.
-. getarg hl \\*[args] \" horizontal line between cells
+. t*getarg hl \\*[args] \" horizontal line between cells
. if !"\\*[hl]"" \
. ds t*hl\\$1 \\*[hl]\"
. if "\\*[args]"" \
. return
.
-. getarg vl \\*[args] \" vertical line between cells
+. t*getarg vl \\*[args] \" vertical line between cells
. if !"\\*[vl]"" \
. ds t*vl\\$1 \\*[vl]\"
. if "\\*[args]"" \
. return
.
-. getarg hal \\*[args] \" horizontal table cell alignment
+. t*getarg hal \\*[args] \" horizontal table cell alignment
. if !"\\*[hal]"" \{\
-. index bcrl \\*[hal]
-. ie \\n[index] \
+. t*index bcrl \\*[hal]
+. ie \\n[t*index] \
. ds t*hal\\$1 \\*[hal]\"
. el \{\
. tmc \\n[.F]:\\n[.c]: Invalid horizontal alignment `\\*[hal]':
@@ -936,10 +944,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. if "\\*[args]"" \
. return
.
-. getarg val \\*[args] \" vertical table cell alignment
+. t*getarg val \\*[args] \" vertical table cell alignment
. if !"\\*[val]"" \{\
-. index tmb \\*[val]
-. ie \\n[index] \
+. t*index tmb \\*[val]
+. ie \\n[t*index] \
. ds t*val\\$1 \\*[val]\"
. el \{\
. tmc \\n[.F]:\\n[.c]: Invalid vertical alignment `\\*[val]':
@@ -948,19 +956,19 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. if "\\*[args]"" \
. return
.
-. getarg ff \\*[args] \" font family
+. t*getarg ff \\*[args] \" font family
. if !"\\*[ff]"" \
. ds t*ff\\$1 \\*[ff]\"
. if "\\*[args]"" \
. return
.
-. getarg fst \\*[args] \" font style
+. t*getarg fst \\*[args] \" font style
. if !"\\*[fst]"" \
. ds t*fst\\$1 \\*[fst]\"
. if "\\*[args]"" \
. return
.
-. getarg fsz \\*[args] \" font size and spacing factor
+. t*getarg fsz \\*[args] \" font size and spacing factor
. if !"\\*[fsz]"" \
. ds t*fsz\\$1 \\*[fsz]\"
..
@@ -987,7 +995,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
. break
. \}
.
-. DI \\*[*]
+. t*DI \\*[*]
. \}
. ev
..