And*_*arr 3 markdown ms-word pandoc
我有一个像这样的降价列表:
* Question A
- Answer 1
- Answer 2
- Answer 3
当我使用 pandoc 将 markdown 文档转换为 docx 时,我需要确保所有答案 (1 - 3) 与问题 A 出现在同一页面上。我怎样才能做到这一点?
在 Markdown 中使用自定义样式,然后在自定义 docx 模板中定义这些样式。
\n\n值得注意的是,Pandoc 的文档指出(添加了重点):
\n\n\n\n\n由于 pandoc\xe2\x80\x99s 文档的中间表示形式的表现力不如其之间转换的许多格式,因此不应期望每种格式之间都能实现完美的转换。\n Pandoc 尝试保留文档的结构元素,但\n 不格式化详细信息...
\n
当然,Markdown 没有“页面”或“分页符”的概念,因此 Pandoc 默认情况下无法处理。然而,Pandoc 知道 docx 样式。正如文档所解释的:
\n\n\n\n\n默认情况下,pandoc\xe2\x80\x99s docx 输出对段落和块引号等块应用一组预定义的样式,并为内联使用大部分默认格式(斜体、粗体)。这适用于大多数用途,尤其是与
\n\nreference.docx文件一起使用。但是,如果您需要将自己的样式应用于块,或者匹配预先存在的一组样式,pandoc 允许您分别使用divs和为块和文本定义自定义样式spans。如果您使用 属性定义
\n\ndiv或,pandoc\n 会将您指定的样式应用于所包含的元素。因此,例如使用语法,spancustom-stylebracketed_spansRun Code Online (Sandbox Code Playgroud)\n\n[Get out]{custom-style="Emphatically"}, he said.\n将生成一个 docx 文件,其中 \xe2\x80\x9cGet out\xe2\x80\x9d 的样式为字符样式\n
\n\nEmphatically。类似地,使用fenced_divs语法,狄金森在这首诗的开头很简单:
\n\nRun Code Online (Sandbox Code Playgroud)\n\n::: {custom-style="Poetry"}\n| A Bird came down the Walk---\n| He did not know I saw---\n:::\n将使用段落样式设置两个包含的行的
\n\nPoetry样式。如果样式尚未在您的 中
\nreference.docx,则它们将在输出文件中定义为从normal文本继承。如果它们已经定义,pandoc 将不会更改定义。
如果您不想手动定义样式,但希望它自动应用于每个列表(或者可能应用于遵循特定模式的每个列表),您可以定义一个自定义过滤器,将样式应用于每个文档中的匹配元素。
\n\n当然,这只是将样式名称添加到输出中。您仍然需要定义样式(告诉 Word 如何显示分配了这些样式的元素)。正如该选项的文档--reference-doc所解释的:
\n\n\n为了获得最佳结果,参考 docx 应该是使用 pandoc 生成的 docx 文件的修改版本。参考 docx 的内容将被忽略,但其样式表和文档属性(包括边距、页面大小、页眉和页脚)将在新 docx 中使用。
\n\nreference.docx如果在命令行上未指定引用 docx,pandoc 将在用户数据目录中查找文件(请参阅--data-dir参考资料)。如果也未找到,则将使用合理的默认值。要生成自定义
\nreference.docx,请首先获取默认值的副本\nreference.docx:pandoc --print-default-data-file reference.docx >\n custom-reference.docx。然后custom-reference.docx在 Word 中打开,根据需要修改样式,然后保存文件。
当然,custom-reference.docx在Word中修改时,您可以添加您在Markdown中使用的新自定义样式。正如@CindyMeister 在评论中指出的那样:
\n\n\nWord 将使用样式来处理此问题,其中问题样式\n 的段落设置为“与下一个保持一致”。答案风格也会有这个。对于最后一个条目,第三种样式不会激活该设置。此外,所有三种样式都将激活段落设置“保持在一起”。
\n
最后,当使用 pandoc 将 Markdown 转换为 Word docx 文件时,使用该选项--reference-doc=custom-reference.docx,您的自定义样式定义将包含在生成的 docx 文件中。只要您还正确识别 Markdown 文档中的哪些元素采用哪种样式,只要整个列表适合一页,您就应该拥有一个不会因分页符而被破坏的列表。
| 归档时间: |
|
| 查看次数: |
3610 次 |
| 最近记录: |