Quarto无法解析include-before-body中的外部HTTPS文件求助
问题描述
长期使用R Markdown创建HTML文档时,可通过以下YAML配置加载外部HTTPS JS文件:
--- title: "My R Markdown document" output: html_document: includes: before_body: https://example.com/myMathjax.js ---
切换到Quarto 1.3.450版本后,按照规范使用include-before-body配置引入同一远程JS文件:
--- title: "My Quarto document" format: html: include-before-body: https://example.com/myMathjax.js ---
渲染时却报错:ERROR: Error resolving include-before- unable to open file https://example.com/myMathjax.js,但该文件实际可正常访问。
问题原因
Quarto的include-before-body等include-*系列配置仅支持加载本地文件,无法直接解析远程HTTPS资源,这是Quarto与Pandoc交互逻辑和R Markdown的差异导致的。
解决方案
提供两种可行的解决方法:
方法1:直接插入脚本标签
在Quarto文档的YAML头之后、正文之前,直接添加脚本引用标签:
<script src="https://example.com/myMathjax.js"></script>
方法2:使用header-includes配置
修改YAML头,通过header-includes配置引入远程脚本,该配置支持解析远程URL:
--- title: "My Quarto document" format: html: header-includes: - <script src="https://example.com/myMathjax.js"></script> ---
内容的提问来源于stack exchange,提问作者user697473
相关产品推荐
相关产品推荐

