繁体   English   中英

如何获取当前 Quarto 文件的名称?

[英]How can I get the name of the current Quarto file?

我想将当前正在执行的 Quarto 文件的名称添加到报告中,而无需对其进行硬编码。 我正在使用 RStudio IDE 内部的 R。`r `r scriptName::current_filename()``r commandArgs()`都返回/Applications/quarto/share/rmd/rmd.R 有没有办法获取 Quarto 脚本的名称,而不是 knitr 正在处理的 R 文件的名称?

作为一种更简单的解决方法,您可以使用quarto::quarto_render()或从bash 终端将文件名作为参数传递给文档。

假设文件名为quarto_doc.qmd

四开本_doc.qmd

---
title: "Quarto File Name"
format: html
params:
  filename: ""
---

## Quarto

you are running the file `r params$filename`

然后从 bash 终端,

fname=quarto_doc.qmd
quarto render $fname -P filename:$fname

渲染输出中的当前文件名


或者,如果您更喜欢使用 R function,您可以像这样在quarto::quarto_render周围创建一个包装器 function 以方便使用,

render_qmd <- function(input, ...) {
  input_file_name <- basename(input)
  quarto::quarto_render(input, execute_params = list(filename = input_file_name), ...)
}

render_qmd("quarto_doc.qmd")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM