Contexto: comandos TABLE en el cuerpo del documento que afectan a las TABLAS en el encabezado

Contexto: comandos TABLE en el cuerpo del documento que afectan a las TABLAS en el encabezado

Estoy intentando utilizar una TABLA como encabezado en Contexto (verUsar una tabla como encabezado en contexto). Sin embargo, los comandos \setupTABLEs y \bTABLE[head|foot]s en el cuerpo del documento afectan la TABLA en el encabezado. El siguiente fragmento ilustra el problema:

  1. La TABLA en el encabezado tiene una fila de encabezado.
  2. Esta fila de encabezado tiene un fondo amarillo.

¿Es esto un error? ¿O hay alguna manera de "alcance" los comandos \setupTABLE \bTABLE[head|foot] para afectar solo a una TABLA específica?

Con referencia ahttps://mailman.ntg.nl/pipermail/ntg-context/2015/083192.html, He intentado usar \egroup y \sgroup. Mis \setupTABLEs también están definidos dentro del bloque \bTABLE.

\startsetups[header]
\bTABLE
    \bTR
        \bTD Header \eTD
    \eTR
\eTABLE
\stopsetups

\setupheadertexts[\setups{header}]

\starttext

\bTABLE[split=repeat, header=yes]
    \setupTABLE[r][first]
        [background=color,
        backgroundcolor=yellow]
    \bTABLEhead
        \bTR
            \bTH Header \eTH
        \eTR
    \eTABLEhead
    \bTABLEbody
        \dorecurse{100} {
        \bTR
            \bTD Body \eTD
        \eTR
        }
    \eTABLEbody
\eTABLE

\stoptext

Respuesta1

Una solución es decirle a ConTeXt que la tabla en el encabezado es una tabla anidada. De esa forma, ConTeXt ignorará las configuraciones definidas en el nivel anterior. Puedes hacer esto de la siguiente manera:

\unprotect
\startsetups[header]
\tabl_ntb_next_level
\bTABLE
    \bTR
        \bTD Header \eTD
    \eTR
\eTABLE
\tabl_ntb_prev_level
\stopsetups
\protect

Los \unprotecty \protectson necesarios porque \tabl_ntb_next_leveles un comando interno.

información relacionada