
Fundo
Um documento Markdown é convertido em XHTML. O documento XHTML codifica aspas e apóstrofos usando entidades nomeadas, como “
e '
.
Nota: Postagem cruzada na mailing list, caso se trate de uma regressão.
Versão: 2022.09.11 20:44
Problema
Os apóstrofos são exibidos como aspas retas, em vez de aspas enroladas. Isto é surpreendente porque (a) estava funcionando em uma versão anterior; e (b) as outras entidades são produzidas conforme esperado, mostrado aqui:
Código
Aqui está um exemplo:
\xmltexentity{apos}{’}
\xmltexentity{lsquo}{‘}
\xmltexentity{rsquo}{’}
\xmltexentity{laquo}{«}
\xmltexentity{raquo}{»}
\startbuffer[document]
<body>
‘Sylvia's spilled «wine».’
</body>
\stopbuffer
\startxmlsetups xml:xhtml
\xmlsetsetup{\xmldocument}{body}{xml:*}
\stopxmlsetups
\startxmlsetups xml:body
\xmlflush{#1}
\stopxmlsetups
\xmlregistersetup{xml:xhtml}
\starttext
\xmlprocessbuffer{xhtml}{document}{}
\stoptext
O código a seguir ajuda a demonstrar melhor o problema:
\xmltexentity{apos}{AP:’}
\xmltexentity{lsquo}{LQ:‘}
\xmltexentity{rsquo}{’:RQ}
Produz:
Eu esperaria ver AP:
no texto antes do apóstrofo, além de enrolá-lo.
Pergunta
Como você enrola a entidade de caractere apóstrofo ( '
)?
Responder1
Como você enrola a entidade de caractere apóstrofo (')?
Você pode adicionar
\definefontfeature[default][default][trep=yes]
para o início do seu documento.
caso isso seja uma regressão.
Em certo sentido, é uma regressão, já que algo que costumava funcionar agora não funciona, masde acordo com Hans este é agora o comportamento pretendido. Pessoalmente, acho que esse trep=yes
ainda deveria ser o padrão, mas também entendo não querer modificar os arquivos de entrada por padrão.
Eu esperaria ver AP: no texto antes do apóstrofo, além de enrolá-lo.
Parece que o ConTeXt não permitirá redefinir nenhuma entidade predefinida. Correndo:
\enabletrackers[xml.entities]
\xmltexentity{apos}{XXX}
\xmltexentity{lsquo}{YYY}
\xmltexentity{rsquo}{ZZZ}
\xmltexentity{laquo}{«}
\xmltexentity{raquo}{»}
da-te
xml > tex > registering tex entity 'apos' as 'XXX'
xml > tex > registering tex entity 'lsquo' as 'YYY'
xml > tex > registering tex entity 'rsquo' as 'ZZZ'
xml > tex > registering tex entity 'laquo' as '«'
xml > tex > registering tex entity 'raquo' as '»'
xml > core > resolving entity ‘ to internal '