
背景
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 '