使用 knitr 打印 data.table 包的 .onAttach 消息
print the data.table package's .onAttach messages with knitr
我有一个 bookdown rmd 看起来像...
Further introductory materials are offered when the package is loaded:
```{r dt-startup, echo=-1, message=TRUE, verbose=TRUE, hide=FALSE}
if ("data.table" %in% .packages()) detach("package:data.table")
library(data.table)
```
我的目的是显示 reader 包的启动消息。但是,它们不打印。这里还有其他 chunk option 可以使用吗?
如您所见,我只是向它添加了几个 maybe-relevant 块选项,但没有取得好的结果。我对输出流的管理不是很熟悉,所以就我所知。我也试过直接用 data.table:::.onAttach()
调用,但没有骰子。
我不确定这里还有什么相关的内容,但是...
- 当前该块之前尚未加载包。我只是添加了第一行以防万一我重新排列文档。
- 我的 before_chapter_script 只包含
knitr::opts_chunk$set(comment="#")
。
- 我的 knit header 值为
bookdown::render_book
,输出为 bookdown::html_book
。
不要。任何为此而被黑客入侵的东西都是脆弱的,而且可以说不是很有用。
谢益辉(knitr 的作者)makes a good case。我的简介:
- 这没有用。您正在编写教程,为什么要包含动态内容(包更改时可能会更改)?此外,为什么不直接指向资源而不是那里打印的资源列表?
- 这很难。这不仅仅是输出流的问题。这些消息不会打印出来,因为它们被
interactive()
支票挡住了。应该如何覆盖它并不明显,如果可以做到,可能会引入什么奇怪的副作用。
我有一个 bookdown rmd 看起来像...
Further introductory materials are offered when the package is loaded:
```{r dt-startup, echo=-1, message=TRUE, verbose=TRUE, hide=FALSE}
if ("data.table" %in% .packages()) detach("package:data.table")
library(data.table)
```
我的目的是显示 reader 包的启动消息。但是,它们不打印。这里还有其他 chunk option 可以使用吗?
如您所见,我只是向它添加了几个 maybe-relevant 块选项,但没有取得好的结果。我对输出流的管理不是很熟悉,所以就我所知。我也试过直接用 data.table:::.onAttach()
调用,但没有骰子。
我不确定这里还有什么相关的内容,但是...
- 当前该块之前尚未加载包。我只是添加了第一行以防万一我重新排列文档。
- 我的 before_chapter_script 只包含
knitr::opts_chunk$set(comment="#")
。 - 我的 knit header 值为
bookdown::render_book
,输出为bookdown::html_book
。
不要。任何为此而被黑客入侵的东西都是脆弱的,而且可以说不是很有用。
谢益辉(knitr 的作者)makes a good case。我的简介:
- 这没有用。您正在编写教程,为什么要包含动态内容(包更改时可能会更改)?此外,为什么不直接指向资源而不是那里打印的资源列表?
- 这很难。这不仅仅是输出流的问题。这些消息不会打印出来,因为它们被
interactive()
支票挡住了。应该如何覆盖它并不明显,如果可以做到,可能会引入什么奇怪的副作用。