Normalização Unicode e hebraico no ConTeXt

Normalização Unicode e hebraico no ConTeXt

Estou compondo um documento em hebraico que inclui apontamentos (por exemplo, vogais, pontos shin e sin, dagesh, etc.) usando ConTeXt. O texto hebraico que desejo compor foi normalizado na forma canônica NFC do Unicode. É bem sabido que a ordenação canônica Unicode dos pontos hebraicos entra em conflito com a ordenação recomendada de pontos específicos com base em suas funções (consultehttps://www.sbl-site.org/Fonts/SBLHebrewUserManual1.5x.pdfpara saber mais sobre este assunto). Felizmente, muitos mecanismos de composição reordenam automaticamente os pontos para garantir que sejam combinados de acordo com as especificações de muitas fontes. Tenho quase certeza de que o XeLaTeX é um deles, pois digita letras hebraicas com vários pontos corretamente, mesmo quando o texto hebraico está no formato NFC.

Minha pergunta é: o ConTeXt com LuaTeX pode lidar corretamente com a mesma situação? No exemplo mínimo a seguir, os tipos de texto ConTeXt apontaram o hebraico corretamente quando os caracteres estão na ordem tipograficamente recomendada, mas não quando estão na ordem canônica Unicode:

%Setup Hebrew text font:
\definefontfeature[f:pointedhebrew][default][
    ccmp=yes,
    mark=yes,
    script=hebr
]
\definefontfamily[hebrew] [rm] [SBL Hebrew] [features=f:pointedhebrew]
%Set the body font:
\setupbodyfont[hebrew]
%Set up right-to-left alignment:
\setupalign[r2l]
\starttext
    %Characters after normalization, in Unicode canonical order (bet + segol + dagesh + final nun):
    בֶּן

    %A word with characters in typographically recommended order (bet + dagesh + segol + final nun):
    בֶּן
\stoptext

Eu escrevi isso usando o ConTeXt versão 2020.03.10, conforme lançado com TeXLive 2020. Peguei a fonte SBL Hebraica dehttps://www.sbl-site.org/educational/BiblicalFonts_SBLHebrew.aspx. De acordo com o manual do usuário da fonte (veja o link acima do MWE), a fonte deve ser capaz de combinar as marcas para formar o glifo correto, independentemente da ordem após a consoante, mas esse não parece ser o caso aqui.

Existe um recurso OpenType que preciso ativar em minha \definefontfeaturechamada para corrigir isso, ou há algum módulo ou opção que posso incluir para fazer com que o ConTeXt componha o hebraico normalizado em Unicode como se tivesse sido ordenado da maneira recomendada, como o XeLaTeX faz? Vejo que o módulo uninormalize é mencionado emXeLaTeX, LuaLaTeX, fontspec, unicode e normalização; isso pode ser usado com ConTeXt?

Responder1

Postei esta pergunta na lista de discussão do ConTeXt (https://www.mail-archive.com/[e-mail protegido]/), e a partir daí aprendi que o ConTeXt não tinha um mecanismo implementado para reordenar os pontos hebraicos de uma forma que funcionasse melhor com as regras de substituição implementadas na maioria das fontes hebraicas. Hans Hagen gentilmente ofereceu sua ajuda ao longo de vários dias e adicionou um mecanismo de reordenação ao hebrewconjunto de recursos padrão. Agora, o MWE da minha pergunta funcionará conforme o esperado se a declaração da fonte for alterada para \definefontfamily[hebrew] [rm] [SBL Hebrew] [features=hebrew].

Este recurso deve ser implementado na versão mais recente do ConTeXt (http://www.pragma-ade.com/download-1.htm).

informação relacionada