Hi Branden, On 2024-04-23 01:59, G. Branden Robinson wrote:
> The foregoing advice could probably use some fine-tuning. Is it okay to > use *roff diversions if you let a macro package that ships with groff do > it for you? > > You seem to be bumping into an anticipated issue, though. > > groff 1.23.0's tbl(1) man page includes the following cautionary note: > > Limitations > Multi‐page tables, if boxed and/or if you want their column > headings repeated after page breaks, require support at the time > the document is formatted. A convention for such support has > arisen in macro packages such as ms, mm, and me. To use it, follow > the .TS token with a space and then “H”; this will be interpreted > by the formatter as a TS macro call with an H argument. Then, > within the table data, call the TH macro; this informs the macro > package where the headings end. If your table has no such heading > rows, or you do not desire their repetition, call TH immediately > after the table format specification. If a multi‐page table is > boxed or has repeating column headings, do not enclose it with > keep/release macros, or divert it in any other way. Further, the > bp request will not cause a page break in a “TS H” table. Define a > macro to wrap bp: invoke it normally if there is no current > diversion. Otherwise, pass the macro call to the enclosing > diversion using the transparent line escape sequence \!; this will > “bubble up” the page break to the output device. See section > “Examples” below for a demonstration. > > I got good results with the attached document. Here are the commands I > used. > > $ nroff -t -mm EXPERIMENTS/table.mm > > $ groff -t -mm EXPERIMENTS/table.mm > table.ps > > Does this help? Unfortunately, I failed to describe my requirements properly – sorry again. My document contains multiple relatively small tables, and each table should appear on exactly one page (i.e. should not cross page boundaries). I attached sample documents and the respective outputs of groff -mm -t -Kutf8 -Tpdf test_boxed.groff > test_boxed.pdf to this message, and I would like to achieve the page break behaviour of the boxed variant, but without having actual boxes drawn around the tables. - Jan
.TS box decimalpoint(,) tab(@); lb rb rb - - - l n n. Konto@Rechnungsbetrag@Anteil Haftpflichtversicherung@31,27 EUR@10,70 EUR Heizung Grundkosten@1720,92 EUR@176,73 EUR Heizung Verbrauchskosten@1720,92 EUR@322,99 EUR Gebäudeversicherung@580,68 EUR@198,78 EUR Frischwasser@379,87 EUR@151,95 EUR Grundsteuer B@277,72 EUR@95,07 EUR Straßenreinigung@38,34 EUR@13,12 EUR Abfallentsorgung@368,00 EUR@147,20 EUR Regenwasser@104,88 EUR@35,90 EUR Abwasser@439,25 EUR@175,70 EUR Lichtstrom@80,00 EUR@26,67 EUR Heizungsstrom@120,20 EUR@41,15 EUR Schornstein/ Heizungswartung@92,83 EUR@31,78 EUR \fBGesamtbetrag:@@1427,74 EUR Vorauszahlungen:@@1524,00 EUR Guthaben:@@-96,26 EUR\fR .TE .sp 2 .TS tab(@); lb lb - - l l. Kürzel@Berechnung UN@Anteil an der Zahl der Wohneinheiten im Objekt (1/n) AR@Anteil der Wohnfläche an der Gesamtwohnfläche im Objekt OC@Anzahl der Personen relativ zur Gesamtanzahl der Bewohner*innen des Objektes CO@Anteil am Gesamtverbrauch .TE .sp 2 .TS box decimalpoint(,) tab(@); cb s - - l n. None: Haftpflichtversicherung (AR) Gesamtbetrag@31,27 EUR Anteil (Leistung)@34,2% (85/248 m²) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@10,70 EUR\fR .TE .TS box decimalpoint(,) tab(@); cb s - - l n. None: Heizung Grundkosten (AR) Gesamtbetrag@1720,92 EUR Anteil (Leistung)@34,2% (85/248 m²) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@30% \fBBetrag@176,73 EUR\fR .TE .TS box decimalpoint(,) tab(@); cb s - - l n. None: Heizung Verbrauchskosten (CO) Gesamtbetrag@1720,92 EUR Anteil (Leistung)@26,8% (5322/19849 kWh) Anteil (Zeitraum)@n/a Anteil (Rechnung)@70% \fBBetrag@322,99 EUR\fR .TE .TS box decimalpoint(,) tab(@); cb s - - l n. None: Gebäudeversicherung (AR) Gesamtbetrag@580,68 EUR Anteil (Leistung)@34,2% (85/248 m²) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@198,78 EUR\fR .TE .TS box decimalpoint(,) tab(@); cb s - - l n. None: Frischwasser (OC) Gesamtbetrag@379,87 EUR Anteil (Leistung)@40,0% (2/5 Personen) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@151,95 EUR\fR .TE .TS box decimalpoint(,) tab(@); cb s - - l n. None: Grundsteuer B (AR) Gesamtbetrag@277,72 EUR Anteil (Leistung)@34,2% (85/248 m²) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@95,07 EUR\fR .TE .TS box decimalpoint(,) tab(@); cb s - - l n. None: Straßenreinigung (AR) Gesamtbetrag@38,34 EUR Anteil (Leistung)@34,2% (85/248 m²) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@13,12 EUR\fR .TE .TS box decimalpoint(,) tab(@); cb s - - l n. None: Abfallentsorgung (OC) Gesamtbetrag@368,00 EUR Anteil (Leistung)@40,0% (2/5 Personen) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@147,20 EUR\fR .TE .TS box decimalpoint(,) tab(@); cb s - - l n. None: Regenwasser (AR) Gesamtbetrag@104,88 EUR Anteil (Leistung)@34,2% (85/248 m²) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@35,90 EUR\fR .TE .TS box decimalpoint(,) tab(@); cb s - - l n. None: Abwasser (OC) Gesamtbetrag@439,25 EUR Anteil (Leistung)@40,0% (2/5 Personen) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@175,70 EUR\fR .TE .TS box decimalpoint(,) tab(@); cb s - - l n. None: Lichtstrom (UN) Gesamtbetrag@80,00 EUR Anteil (Leistung)@33,3% (1/3 Wohnungen) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@26,67 EUR\fR .TE .TS box decimalpoint(,) tab(@); cb s - - l n. None: Heizungsstrom (AR) Gesamtbetrag@120,20 EUR Anteil (Leistung)@34,2% (85/248 m²) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@41,15 EUR\fR .TE .TS box decimalpoint(,) tab(@); cb s - - l n. None: Schornstein/ Heizungswartung (AR) Gesamtbetrag@92,83 EUR Anteil (Leistung)@34,2% (85/248 m²) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@31,78 EUR\fR .TE
test_boxed.pdf
Description: Adobe PDF document
.TS decimalpoint(,) tab(@); lb rb rb - - - l n n. Konto@Rechnungsbetrag@Anteil Haftpflichtversicherung@31,27 EUR@10,70 EUR Heizung Grundkosten@1720,92 EUR@176,73 EUR Heizung Verbrauchskosten@1720,92 EUR@322,99 EUR Gebäudeversicherung@580,68 EUR@198,78 EUR Frischwasser@379,87 EUR@151,95 EUR Grundsteuer B@277,72 EUR@95,07 EUR Straßenreinigung@38,34 EUR@13,12 EUR Abfallentsorgung@368,00 EUR@147,20 EUR Regenwasser@104,88 EUR@35,90 EUR Abwasser@439,25 EUR@175,70 EUR Lichtstrom@80,00 EUR@26,67 EUR Heizungsstrom@120,20 EUR@41,15 EUR Schornstein/ Heizungswartung@92,83 EUR@31,78 EUR \fBGesamtbetrag:@@1427,74 EUR Vorauszahlungen:@@1524,00 EUR Guthaben:@@-96,26 EUR\fR .TE .sp 2 .TS tab(@); lb lb - - l l. Kürzel@Berechnung UN@Anteil an der Zahl der Wohneinheiten im Objekt (1/n) AR@Anteil der Wohnfläche an der Gesamtwohnfläche im Objekt OC@Anzahl der Personen relativ zur Gesamtanzahl der Bewohner*innen des Objektes CO@Anteil am Gesamtverbrauch .TE .sp 2 .TS decimalpoint(,) tab(@); cb s - - l n. None: Haftpflichtversicherung (AR) Gesamtbetrag@31,27 EUR Anteil (Leistung)@34,2% (85/248 m²) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@10,70 EUR\fR .TE .TS decimalpoint(,) tab(@); cb s - - l n. None: Heizung Grundkosten (AR) Gesamtbetrag@1720,92 EUR Anteil (Leistung)@34,2% (85/248 m²) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@30% \fBBetrag@176,73 EUR\fR .TE .TS decimalpoint(,) tab(@); cb s - - l n. None: Heizung Verbrauchskosten (CO) Gesamtbetrag@1720,92 EUR Anteil (Leistung)@26,8% (5322/19849 kWh) Anteil (Zeitraum)@n/a Anteil (Rechnung)@70% \fBBetrag@322,99 EUR\fR .TE .TS decimalpoint(,) tab(@); cb s - - l n. None: Gebäudeversicherung (AR) Gesamtbetrag@580,68 EUR Anteil (Leistung)@34,2% (85/248 m²) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@198,78 EUR\fR .TE .TS decimalpoint(,) tab(@); cb s - - l n. None: Frischwasser (OC) Gesamtbetrag@379,87 EUR Anteil (Leistung)@40,0% (2/5 Personen) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@151,95 EUR\fR .TE .TS decimalpoint(,) tab(@); cb s - - l n. None: Grundsteuer B (AR) Gesamtbetrag@277,72 EUR Anteil (Leistung)@34,2% (85/248 m²) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@95,07 EUR\fR .TE .TS decimalpoint(,) tab(@); cb s - - l n. None: Straßenreinigung (AR) Gesamtbetrag@38,34 EUR Anteil (Leistung)@34,2% (85/248 m²) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@13,12 EUR\fR .TE .TS decimalpoint(,) tab(@); cb s - - l n. None: Abfallentsorgung (OC) Gesamtbetrag@368,00 EUR Anteil (Leistung)@40,0% (2/5 Personen) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@147,20 EUR\fR .TE .TS decimalpoint(,) tab(@); cb s - - l n. None: Regenwasser (AR) Gesamtbetrag@104,88 EUR Anteil (Leistung)@34,2% (85/248 m²) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@35,90 EUR\fR .TE .TS decimalpoint(,) tab(@); cb s - - l n. None: Abwasser (OC) Gesamtbetrag@439,25 EUR Anteil (Leistung)@40,0% (2/5 Personen) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@175,70 EUR\fR .TE .TS decimalpoint(,) tab(@); cb s - - l n. None: Lichtstrom (UN) Gesamtbetrag@80,00 EUR Anteil (Leistung)@33,3% (1/3 Wohnungen) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@26,67 EUR\fR .TE .TS decimalpoint(,) tab(@); cb s - - l n. None: Heizungsstrom (AR) Gesamtbetrag@120,20 EUR Anteil (Leistung)@34,2% (85/248 m²) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@41,15 EUR\fR .TE .TS decimalpoint(,) tab(@); cb s - - l n. None: Schornstein/ Heizungswartung (AR) Gesamtbetrag@92,83 EUR Anteil (Leistung)@34,2% (85/248 m²) Anteil (Zeitraum)@100,0% (365/365) Anteil (Rechnung)@100% \fBBetrag@31,78 EUR\fR .TE
test_unboxed.pdf
Description: Adobe PDF document
signature.asc
Description: PGP signature