ConTeXt: consulte el primer y último valor de un contador en la página actual

ConTeXt: consulte el primer y último valor de un contador en la página actual

Busco una manera de mostrar el primer y último valor de un contador en el encabezado, como enestepregunta,pero para contexto.

Si nosotros, en un salto de página, estamos en medio de un problema, podría vivir con el número de referencia que comienza antes de la página actual o el primero nuevo en la página actual.

Si solo hay un problema en la página, preferiría el Problema X en lugar del Problema XX.

Pregunta¿Existe una forma (simple) de hacer esto en ConTeXT?

Mi intento:

encontréesta pregunta, que parece que podría solucionar mi problema, pero tengo un contador y no una marca con mi enumeración. con los ingenuos

\setuppapersize[A6][A5,landscape]
\setuparranging[2SIDE]
\setupheadertexts[{Problem \getnumber[problem][first]--\getnumber[problem][last]}]

\defineenumeration[problem][
text=Problem,
]

\starttext
\dorecurse{4}{\startproblem[problem:\recurselevel]
\samplefile{ward} We are now in problem 
\in[problem:\recurselevel]\stopproblem}
\stoptext

Obtengo el siguiente resultado no deseado (esperaría que la página de la izquierda tuviera el encabezado "Problema 1-2" y la de la derecha "Problema 3-4"):

imagen con un resultado aún problemático

Quizás la pregunta podría reformularse como:

Pregunta¿Hay alguna manera de conectar automáticamente una marca para usar con el contador de enumeración para obtener lo que busco?

Respuesta1

Para mostrar los valores de las enumeraciones en el encabezado hay que crear un nuevo markregistro con el \definemarkingcomando.

Para guardar el valor del contador debe usar el \markingcomando y pasar el valor del contador como argumento. Puede conectar esta tarea a la numbercommandclave.

\setuppapersize [A5]

\definemarking [problem]

\setupheadertexts
  [{Problem \getmarking[problem][top]–\getmarking[problem][bottom]}]

\defineenumeration
  [problem]
  [text=Problem,
   numbercommand=\groupedcommand{}{\expanded{\marking[problem]{\rawcountervalue[problem]}}}]

\starttext

\dorecurse{10}
  {\startproblem
   \samplefile{weisman}
   \stopproblem}

\stoptext

ingrese la descripción de la imagen aquí

información relacionada