
3 分钟让文档自动编号pandoc-crossref 过滤器完全指南【免费下载链接】pandoc-crossrefPandoc filter for cross-references项目地址: https://gitcode.com/gh_mirrors/pa/pandoc-crossref你正在写一份十几页的文档图已经超过十张。这时想在开头插一张新图——完了正文里每一句见图 3、式 (7)都得手动往下挪一位。改到第五处你就想放弃。pandoc-crossref 就是为消灭这类手工维护而生的过滤器它给你的图、公式和表格自动编上号正文里写的fig:xxx会在输出时自动替换成对应编号。输出覆盖 HTML、LaTeX、PDF、Markdown、DOCX 等格式。它是什么谁需要它一句话定位pandoc-crossref 是挂在 Pandoc 上的一道中间过滤器。Pandoc 负责把 Markdown 转换成目标格式这个过滤器在中间顺手把编号和引用处理好你写的原文几乎不用改动。它提供的核心能力五类元素自动编号图片fig、公式eq、表格tbl、代码块lst、章节sec交叉引用正文写fig:figure1输出变成fig. 1连续引用会自动压缩成figs. 2-4这种区间形式章编号模式编号变成3.2样式每章从头计数目录清单文中插入\listoffigures、\listoftables自动汇总出图表清单LaTeX 输出时编号直接交给 LaTeX 引擎处理还能配合 cleveref 自动区分图/式/表的前缀写毕业论文、技术报告、长篇教程并且需要产出 PDF 或 HTML 的人基本就是它的目标用户。两条命令看到第一个交叉引用最短安装路径走 Nix一条命令装好nix profile install github:lierdakil/pandoc-crossref#pandoc-with-crossref pandoc demo.md -o demo.pdf --filter pandoc-crossref --number-sections第一条命令同时装上 pandoc-crossref 和与之版本匹配的 pandoc避开版本错配这类经典问题如果你本机已有 pandoc也可以只装过滤器本身。第二条命令就是日常用法指向任意一份含图和引用的 Markdown 文件--number-sections负责章节编号。跑完你会得到一份所有图表都带编号、所有...占位符都被替换成真实编号的 PDF。场景一论文里自动编号公式与图片这段最小示例演示了编号和引用的全部写法# 方法 我们用如下模型拟合数据 $$ P_i(x) \sum_i a_i x^i $$ {#eq:model} 如 eq:model 所示系数随阶数快速衰减。 残差分布{#fig:residual}规则其实就三条公式后跟{#eq:标签}、图片后跟{#fig:标签}正文用加标签引用。转换后公式右侧出现(1)图片上方出现Figure 1而eq:model变成eq. 1。关键好处在于之后你无论在哪插入新公式、新图编号和全文引用会一起自动更新不用再做全文搜索替换。场景二技术文档里的表格与子图表格的写法是在表格下方加一行以:开头的题注| 模型 | 延迟 | |:-------|--------:| | 方案 A | 12 ms| : 各方案响应延迟对比 {#tbl:latency} 由 tbl:latency 可知方案 A 延迟最低。子图则把多张小图包进同一个div idfig:网格标签过滤器会自动给出图 2 (a)、图 2 (b)这样的引用形式适合放对比截图或实验结果拼图。第一次上手容易踩的 3 个坑过滤器顺序pandoc-crossref 复用了 citeproc 的引文语法所以它必须排在 citeproc 之前运行写成pandoc -F pandoc-crossref --citeproc 文档.md。--number-sections别忘了LaTeX 输出下不带它章节引用不会生效其他格式也建议始终开启否则章节标题没编号跳转和引用都会很别扭。预编译二进制的版本匹配如果你直接下载 release 里的预编译版本pandoc 版本必须与构建 pandoc-crossref 时一致否则输出会很诡异。用上面的 Nix 方式安装则天然规避这一点。常搭配的 Pandoc 生态伙伴pandoc转换主体整个工作流的地基pandoc-citeproc处理文献引文与参考文献列表与上面的过滤器顺序约定配套pandoc-fignos / pandoc-eqnos分别只做图表、公式编号的前辈工具pandoc-crossref 正是在吸收二者能力的基础上把两者合一LaTeX cleverefPDF 场景下的引用增强自动输出Fig. 3、Eq. 5这类带类型前缀的引用想动手试的话仓库里有一份现成样例docs/demo/demo.md配套 Makefile 展示了各输出格式的完整转换效果全部选项和模板定制细节可以查docs/index.md。写内容的人管内容编号和引用的一致性交给工具链——这就是 pandoc-crossref 想替你扛下的那部分工作。【免费下载链接】pandoc-crossrefPandoc filter for cross-references项目地址: https://gitcode.com/gh_mirrors/pa/pandoc-crossref创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考