在大型降价文档的选定部分上运行pandoc

时间:2017-08-17 02:47:31

标签: markdown r-markdown pandoc

我想知道人们如何管理大型降价文件。通常我想在编译整个文档之前检查小部分,部分或章节是否正常。这些天我这样做的方式,我们很多人可能已经练习过,在较小的降价文件中打破整个文档并将其用作" child"主文档中的文档。

该方法的一个问题是所有内容都不存在于单个文档中,我必须跳过几个文档来进行连接和编辑。但同样,如果我保留一个文件,它会使整个编译和调试变得非常困难。因此我想知道,有没有什么方法可以在文档的选定部分运行pandoc,比如从第23行到第52行,或选定的部分或部分?

1 个答案:

答案 0 :(得分:2)

您可以使用bash“流程替换”功能实现此目的。基本上,您运行pandoc但不是给它一个文件的名称,而是给它一个命令的输出。因此,我们可以在pandoc的前10行上运行text.md,如下所示:

pandoc <(head text.md)

或者第23到52行是这样的:

pandoc <(sed -ne '23,52p' text.md)

或与awk相同:

pandoc <(awk 'NR>22 && NR<53' text.md)

或者,在pandoc章标题后的10行上运行#I2C Section

pandoc <(grep -A10 "^#I2C Section" text.md)

看起来你也可以使用简单的管道完成上述所有工作,这对Windows用户来说更容易:

head text.md | pandoc

我猜你也可以通过查找以#开头的行来获取更高级的内容,例如获取文档的结构:

grep "^#" text.md | pandoc > structure.html