如何在RStudio网站项目的_quarto.yml中自动获取Quarto版本至页脚?
自动填充Quarto版本到页脚的实现方法
当然可以不用硬编码版本号,有两种常用实现方式:
方法一:使用Quarto内置变量
Quarto自带quarto.version内置变量,直接在_quarto.yml里引用即可自动替换为当前安装的版本号:
website: page-footer: left: "Powered by Quarto v{{ quarto.version }}"
渲染网站时,这个变量会自动填充为实际的Quarto版本。
方法二:通过Lua过滤器动态注入
如果需要更灵活的自定义逻辑,可以用Lua过滤器配合JS实现:
- 在项目根目录创建
version-filter.lua文件:
function Pandoc(doc) quarto.doc.addHtmlDependency({ name = "version-footer", scripts = {"version-script.js"} }) return doc end
- 再创建
version-script.js文件:
document.addEventListener('DOMContentLoaded', function() { const footerLeft = document.querySelector('.page-footer-left'); if (footerLeft) { const quartoVersion = quarto.version; footerLeft.textContent = `Powered by Quarto v${quartoVersion}`; } });
- 在
_quarto.yml中启用过滤器:
website: page-footer: left: "Powered by Quarto" filters: - version-filter.lua
优先推荐第一种方法,简洁直接,无需额外文件。
内容的提问来源于stack exchange,提问作者Carl
相关产品推荐
相关产品推荐

