如何在VS Code中用Python实现Quarto文档YAML头自动生成当日日期
在VS Code中用Python实现自动填充当日日期的Quarto YAML头
问题背景
此前在RStudio中使用Quarto时,我通过以下R代码片段生成可自动填充当日日期的YAML头:
snippet headerq --- date: "`r Sys.Date()`" ---
使用该headerq片段会生成如下内容:
--- date: "2024-03-03" ---
想知道如何在VS Code中用Python实现相同功能?
解决方案
按以下步骤操作即可实现:
- 打开VS Code的用户代码片段设置:
按下Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(Mac),输入Configure User Snippets,选择quarto.json(若不存在则新建该文件)。 - 在
quarto.json中添加以下代码片段:
"Quarto Date Header": { "prefix": "headerq", "body": [ "---", "date: \"${1:$(python -c 'from datetime import date; print(date.today().isoformat())')}\"", "---" ], "description": "生成带当日日期的Quarto YAML头" }
- 保存文件后,在Quarto(.qmd)文件中输入
headerq并按下Tab键,即可自动生成包含当日日期的YAML头,效果与RStudio中的一致。
原理说明
代码片段中通过$(...)执行shell命令,调用Python的datetime模块获取当日的ISO格式日期(如2024-03-03),并自动填充到YAML的date字段中。
内容的提问来源于stack exchange,提问作者Joe
相关产品推荐
相关产品推荐

