Desative o recurso Old Number otf para numeração de linha no ConTeXt

Desative o recurso Old Number otf para numeração de linha no ConTeXt

Estou usando os recursos do OldNumber em minhas apresentações porque gosto deles (de gustibus…). No entanto, eles parecem bastante estranhos quando usados ​​para numerar linhas. O que devo fazer para que as linhas sejam numeradas da maneira padrão enquanto o onum ainda estiver no texto? Aposto que tem algo a ver com a setuplinenumbering conversionopção, mas não sei como posso conectá-la ao 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: O onumrecurso pode ser alterado antes startlinenumbering. Tentei brincar com ele, mas sem sucesso. E eu gostaria que o texto mantivesse o estilo numérico antigo, então isso seria uma solução alternativa.

Responder1

Primeiro, você nunca deve substituir completamente o defaultconjunto de recursos. É melhor estendê-lo usando:

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

Em seguida, defina um f:lnumrecurso que desative o onumrecursoe ativa o lnumrecurso:

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

Este recurso pode então ser usado como:

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

Para habilitar este recurso para numeração de linha, use a styletecla (também adicionei align=flushright)

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

Aqui está um exemplo 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

que dá

insira a descrição da imagem aqui

informação relacionada