html - Dita-OT:标记为 HTML 转义字符串/字符(特别是括号)
问题描述
一个工作日的后半段时间里,有些事情一直困扰着我:当我尝试保持括号完整时,在 Dita 中将降价到 HTML 转换过程中实际发生了什么。
具体来说,这是我原来的降价:
1. Value[:, :]
应该按原样用 HTML 编写。但是,查看 Dita 生成的 HTML 元素:
<li class="li">
<p class="p">
Value
<span class="xref"></span>
</p>
</li>
预期输出:
<li class="li">
<p class="p">
Value[:, :]
</p>
</li>
这意味着括号被解释为外部引用(?)
我使用以下命令在 dita CLI 版本 3.1.2 (windows 10) 中生成我的降价到 HTML 转换:
dita --input=root.ditamap --output=./output --format=html5
root.ditamap 只包含一个主题,即我的降价文件。
我首先尝试了以下方法:
1)使用 \ 转义字符串,结果:
1. Value\[:, :\]
2)使用html实体代替括号([
和 ]
)导致:1. Value:, :
3) 使用 UTF 代码代替括号 ( [
and ]
) 会导致:
1. Value:, :
然后我尝试在那里添加更多括号并且它起作用了!
4)有效的降价:1. Value[[]:, :[]]
产生预期的输出1. Value[:, :]
我的问题:
1) 这三个部分中的哪一个负责这种行为:Markdown、Dita 或 HTML?(对于这种行为,我的意思是对括号的解释使它们在原始转换过程中消失)。
2)是否有“更好”/“通用”的方式来转义markdown中的字符串-> html by dita?(通过更好的方式,我的意思是使原始降价字符串的含义相同,而通用我的意思是可以应用于所有字符串的东西,而不仅仅是括号)
至少我希望我的发现对某人有用,即使我意识到我的用例非常具体。:)
解决方案
推荐阅读
- javascript - 在 JavaScript 中显示数组时,它只显示 ',,,'
- php - utf8 conver gb2312乱码
- angular - Angular5 中的 ThreeJS DragControls
- python - Python OpenCV:如何将 YCbCr 转换回 RGB?
- javascript - 如何将具有两对的对象添加到具有与对象相同的键和值的数组中
- c++ - OpenGL 立方体和金字塔
- javascript - mysql忽略使用SET提交
- javascript -
在 material-ui 中只是禁用组件的可见性。如何获得淡入淡出效果并实际隐藏组件? - arrays - 如何在 Laravel 中将多个数组/变量传递给 DOMPDF?
- python - 如何从 python 运行设置批处理文件并将环境转移到以后的命令?