[NTG-context] natural table oddities

Bruce Horrocks ntg at scorecrow.com
Tue Mar 28 02:19:00 CEST 2023

If you're asking for comments with a view to making changes then...

> On 27 Mar 2023, at 15:03, Henning Hraban Ramm via ntg-context <ntg-context at ntg.nl> wrote:
> I would be happy about some answers/comments.
> Hraban
> Am 13.03.23 um 23:26 schrieb Henning Hraban Ramm:
>> Working on the documentation for “natural tables” in my book I stumbled upon a few oddities/problems:
>> ## Addressing cells:
>> * There’s \setupTABLE[header], but not "footer" (or "section"); since we have TABLEhead and TABLEfoot, IMO "head" and "foot" would make sense.

I'd be happy with that, especially as there is already headstyle and headcolor.

>> * Row 1 is the first row of TABLEbody. I couldn’t find how to address the first line of TABLEbody.
>> * If I format a column, e.g. \setupTABLE[c][-1][color=red], body and foot are formatted, but not the same column in header. I couldn’t find how to format columns in header.

If you disregard the Wiki page instructions to use \bTH...\eTH then you can format the header using:

    \bTR \bTH Column 1 \eTH \bTD[color=blue] Column 2 \eTD \eTR

but I'm not sure what the consequences might be, if any. You lose the default bold heading so maybe that's all /bTH.../eTH is adding?

It would be nice to have a way of specifying the header explicitly. My suggestion would be to have:
- \setupTABLE[r][head][...] affect just the header
- \setupTABLE[r][next][...] affect the new page header
- \setupTABLE[r][first|last|body][...] affect the first, or last, or only the body rows (i.e. not the header or footer)
- \setupTABLE[r][foot][...] affect just the footer 

[r][last] (and [r][-1]) would represent the last body row (but not the footer row if one has been requested).

Extending to the formatting of header/footer/next etc columns is not quite so neat as an extra parameter is required, e.g. [c][<n>][head][...] to reference column n in the header. For consistency the syntax [c][<n>][body][...] could be an option.

>> * I don’t understand the addressing options "start" and "one".

Me neither. :)

>> ## Formatting
>> * maxwidth doesn’t seem to have an effect, neither on the whole table nor on a column.
>> * textwidth works only for the whole table.
>> * width gets stretched if option=stretch; i.e. I can’t fix the width of single cells or columns.

For me, \setupTABLE [c] [1] [width=3cm] fixes the width of column 1 and forces long text to wrap.

I'm not sure what your \textwidth comment relates to because \setupTABLE [c] [1] [width=.2\textwidth] works as expected for me.

>> ## Page breaking
>> * What’s the difference between split=repeat and header=repeat ?

\setupTABLE [split=repeat] % works as expected for me
\setupTABLE [header=repeat] % doesn't work for me

>> I’d like to know if there are misunderstandings / if the behavior is intentional.

Bruce Horrocks
Hampshire, UK

More information about the ntg-context mailing list