Desactive la función Old Number otf para la numeración de líneas en ConTeXt

Desactive la función Old Number otf para la numeración de líneas en ConTeXt

Estoy usando las funciones de OldNumber en mis presentaciones porque me gustan (de gustibus…). Sin embargo, se ven bastante extraños cuando se usan en rectas numéricas. ¿Qué debo hacer para que las líneas se numeren de forma estándar mientras onum sigue activo en el texto? Apuesto a que hay algo que ver con la setuplinenumbering conversionopción, pero no sé cómo puedo conectarla al featurecomando.

%\setuplinenumbering[conversion=number]
\definefontfeature [default] [onum=yes]
\definefontfeature [f:lnum] [onum=no]
\starttext
0123456789

\feature[f:lnum] %does not have any effect, which wouldn' be exactly what I want btw
\startlinenumbering
\input dawkins
\stoplinenumbering
\stoptext

NB: La onumcaracterística podría cambiarse antes startlinenumbering. Intenté jugar con él, pero sin éxito. Y me gustaría que el texto mantuviera su estilo numérico antiguo, por lo que esta sería una solución.

Respuesta1

En primer lugar, nunca debes anular por completo el defaultconjunto de funciones. Es mejor ampliarlo usando:

\definefontfeature [default] [default] [onum=yes]

Luego defina una f:lnumfunción que deshabilite la onumfunción.y habilita la lnumfunción:

\definefontfeature [f:lnum]  [default] [onum=no, lnum=yes]

Esta característica luego se puede utilizar como:

{\feature[+][f:lnum] 0123456789}

Para habilitar esta función para la numeración de líneas, use la styletecla (también agregué align=flushright)

\setuplinenumbering[align=flushright,style={\feature[+][f:lnum]}]

Aquí tienes un ejemplo completo:

\definefontfeature [default] [default] [onum=yes]
\definefontfeature [f:lnum]  [default] [onum=no, lnum=yes]

\setuplinenumbering[align=flushright,style={\feature[+][f:lnum]}]

\starttext

\startlinenumbering
\input dawkins
\stoplinenumbering
\stoptext

lo que da

ingrese la descripción de la imagen aquí

información relacionada