【发布时间】:2017-11-13 18:41:23
【问题描述】:
我有一个从默认 --data-dir 加载的 Pandoc (v1.19.2.1) HTML5 模板。在模板中,我需要加载外部资源,例如样式表和 JavaScript。我想加载相对于模板路径的那些资源,而不是工作目录或源文件。例如,在 macOS 上,在 ~/.pandoc/templates/hierarchical/hierarchical.html:
…
<link rel="stylesheet" href="hierarchical.css">
…
其中hierarchical.css 位于~/.pandoc/templates/hierarchical/hierarchical.css,与模板本身位于同一目录中。
然后从命令行调用:
pandoc \
--from=markdown_strict+header_attributes+yaml_metadata_block+pipe_tables\
--to=html5 \
--self-contained \
--template="hierarchical/template.html" \
--section-divs \
--output="$1.html" \
--toc \
--toc-depth=6 \
"$1.md"
我得到错误:
pandoc: Could not fetch hierarchical.css
hierarchical.css: openBinaryFile: does not exist (No such file or directory)
我尝试了各种其他指向 CSS 文件的相对路径。唯一有效的是绝对路径/Users/jmakeig/.pandoc/templates/hierarchical/hierarchical.css,当然,它只适用于我的笔记本电脑。
有什么方法可以解决 Pandoc 模板中相对于模板本身的外部资源,从而使模板具有可移植性?我没有看到可以在模板或命令行选项中使用的明显外部变量。
【问题讨论】:
-
今天遇到了同样的事情。不知道该怎么办
-
这至少是一个值得注意的问题github.com/jgm/pandoc/issues/3356
标签: pandoc