4.3 R コード内で文書メタデータにアクセスする
Rmd 文書をコンパイルする際には, YAML セクションの全てのメタデータはリストオブジェクト rmarkdown::metadata
に格納されます. 例えば rmarkdown::metadata$title
には文書のタイトルが与えられます. この metadata
オブジェクトは R コード内で使うことができるので, YAML メタデータに与えられた情報をハードコードしなくてすみます. 例えば以下のように blastula パッケージ (Iannone and Cheng 2020) で Eメールを送る時, 文書のタイトルをメールの件名に, 著者フィールドを送信者情報に使うことができます.
---
title: 重要なレポート
author: John Doe
email: john@example.com
---
重要な分析ができましたので結果をメールで送りたいと思います.
```{r}
library(rmarkdown)
library(blastula)
smtp_send(
...,
from = setNames(metadata$email, metadata$author),
subject = metadata$title
)
```
参考文献
Iannone, Richard, and Joe Cheng. 2020. Blastula: Easily Send HTML Email Messages. https://github.com/rich-iannone/blastula.