背景
Markdown 文档转换为 XHTML。XHTML 文档使用命名实体(例如“
和 )对引号和撇号进行编码'
。
注意:交叉发布到邮件列表,以防这是一个回归。
版本:2022.09.11 20:44
问题
撇号输出为直引号,而不是弯引号。这令人惊讶,因为 (a) 它在以前的版本中可以正常工作;并且 (b) 其他实体按预期输出,如下所示:
代码
以下是一个例子:
\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
以下代码有助于进一步说明该问题:
\xmltexentity{apos}{AP:’}
\xmltexentity{lsquo}{LQ:‘}
\xmltexentity{rsquo}{’:RQ}
生成:
AP:
除了卷曲撇号之外,我还希望在文本中看到撇号之前的内容。
问题
如何使撇号字符实体 ( '
) 卷曲?
答案1
如何卷曲撇号字符实体 (')?
你可以加
\definefontfeature[default][default][trep=yes]
到文档的开头。
以防这是一种回归。
从某种意义上说,这是一种倒退,因为过去行得通的东西现在行不通了,但是根据汉斯的说法,这是现在的预期行为。我个人认为这trep=yes
应该还是默认的,但我也能理解不想默认修改输入文件。
除了卷曲撇号外,我还希望在文本中的撇号前看到 AP:。
看来 ConTeXt 不允许您重新定义任何预定义实体。运行:
\enabletrackers[xml.entities]
\xmltexentity{apos}{XXX}
\xmltexentity{lsquo}{YYY}
\xmltexentity{rsquo}{ZZZ}
\xmltexentity{laquo}{«}
\xmltexentity{raquo}{»}
给你
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 '