Preciso usar a entrada de um JSON dentro do meu texto. Às vezes contém código UTF-8. Por exemplo:
Belgi\u00e
cre\u00ebren
Como posso usar essa string no ConTeXt LuaTeX, para que o resultado seja uma palavra holandesa escrita corretamente?
België
creëren
De preferência, como parte de uma frase, onde %placeofbirthCandidate e %raisedinCountries são substituídos pelo conteúdo do JSON.
\par Je bent geboren in %placeofbirthCandidate. Je bent opgegroeid in %raisedinCountries.
\par Je bent geboren in Belgi\"e. Je bent opgegroeid in Nederland, Belgi\"e en Engeland.
Responder1
Se você precisar apenas dos caracteres abaixo \ua000
, provavelmente poderá usar
\def\u#1#2#3#4{\uchar"#1#2#3#4 }
Se você precisar usar caracteres mais altos seguidos de uma letra, \u
você também pode fazer uma não-letra
\catcode`\u=12
mas é melhor fazer isso em um grupo local ou algo irá quebrar.
(Isso está apenas usando primitivas luatex, portanto deve funcionar no contexto.)
Observe que os caracteres entre U+FFFF e U+10FFFF seriam representados em JSON por duas \u
sequências denotando a codificação UTF-16 do valor unicode, portanto, uma solução completa teria que detectar o primeiro de um par substituto UTF-16 e combinar com o seguinte \u
código.