Bookdown有许多配置选项,我发现很难理解如何知道一个选项是否存在,以及这些选项所在的逻辑背后的逻辑.
具体来说,我发现很难描述什么样进去的选项_bookdown.yml鉴于有至少两个其他的地方,说明选择:
_output.yml,bookdown::render_book. 在我看来,在_bookdown.yml函数的参数和参数之间存在任何类型的1对1映射bookdown::render_book,因此_bookdown.yml似乎不仅仅是记录函数调用选项的不同方式.
我们可以在源代码中看到`_bookdown.yml'正在控制一些配置选项,但不是全部.
所以 - 重新解释这个问题 - 为什么是_bookdown.yml一个单独的配置文件以及它应该包含什么的定义?
举一个有代表性的例子,有一个chapter_name可以使用的选项_bookdown.yml.我有以下问题:
chapter_name是用于记账的CRAN源代码,即使在那里我也无法弄清楚它是如何被使用的.注意,讨论_bookdown.yml通过笔者在这里,但我还是不完全了解.
我在 R 中有一个 bookdown 项目,想切换到 Quarto。在 bookdown 项目中,我有一个 R 脚本_common.R(它包括库以及各种设置和辅助函数)在渲染每一章(单独的 qmd 文件)之前运行。
如何在 Quarto 中实现这样的脚本文件?
我尝试在 _quarto.yml 中设置:
project:
type: book
pre-render: _common.R
Run Code Online (Sandbox Code Playgroud)
但这只会在整本书渲染之前运行一次脚本,而不是在每一章之前运行一次。每个章节似乎都是在自己的环境中呈现的,因此所有设置和脚本_common.R都不可用。
解决方法是包括
```{r echo = FALSE, message=FALSE, warning=FALSE}
source("_common.R")
```
Run Code Online (Sandbox Code Playgroud)
在每个 .Rmd/.qmd 文件的顶部。有更好的解决方案吗?
任何帮助表示赞赏!
我正在用Rmarkdown中的Bookdown撰写我的论文(我最终会将其导出为PDF格式).提交论文时,我需要在论文的第一页之前加入一些带有手写签名的扫描文档.
Bookdown在组合不同的Rmd文件方面令人惊叹,但我还没有设法在标题页之前包含PDF文档.
我试过这个:
bookdown::pdf_book:
includes:
in_header: preamble.tex
before_body: beforebody.tex
Run Code Online (Sandbox Code Playgroud)
在preamble.tex中:
\usepackage{pdfpages}
Run Code Online (Sandbox Code Playgroud)
在beforebody.tex中:
\includepdf[pages={5}, scale=1]{OfficialFrontpages.pdf}
\newpage
Run Code Online (Sandbox Code Playgroud)
但是,它首先创建Bookdown标题页,并仅在目录之前插入这些页面.有没有办法强制在最终PDF文档的第一页之前包含此文档?
将这些命令作为第一个.Rmd文件的行包含在内也不起作用:

\raggedright
\clearpage
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用伟大的新包bookdown来使用RStudio中的RMarkdown创建一本gitbook风格的书.看到这里.
我的问题是关于创建自定义块.文档中有一个示例如何在CSS文件中定义块样式:
div.FOO {
font-weight: bold;
color: red;
}
Run Code Online (Sandbox Code Playgroud)
作者给出了一些块可能看起来像的例子.
AFAIK,没有关于如何使用图标定义此特定块的示例.我不太了解CSS,所以寻找我可以修改的东西.
我想使用像Leanpub这样的字体真棒图标来创建一些特殊的侧边栏.创建这样的东西的任何想法:
我想我需要复制fontawesome目录,指定包含的fontawesome css文件的路径(在某处,不确定在哪里),并<i>在我的div定义中使用标记,例如<i class="fa fa-comment"></i>.关于如何实现这一点并不明确......或者它是否可行.
我bookdown用来创建pdf报告,但我的表都浮动到页面底部,无论有多少空间.看这个例子:
---
title: "test_doc"
author: "Jake Thompson"
date: "6/30/2017"
output:
bookdown::pdf_document2:
toc: false
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE, collapse = TRUE)
library(tidyverse)
```
# Test heading
Let make a data frame and print it in Table \@ref(tab:test-table)
```{r test-table}
data_frame(col_a = seq_len(5), col_b = rnorm(5), col_c = runif(5)) %>%
knitr::kable(caption = "This is a test")
```
Run Code Online (Sandbox Code Playgroud)
生成的pdf如下所示:

为什么表格会在页面底部显示?有没有办法防止这种行为?
我试着在文本的几个地方引用一个单脚注.但是,通过下面的代码,我有两个相同内容的脚注.
---
title: "My document"
output: html_document
---
One part of the text [^1].
Two pages later [^1].
[^1]: My footnote
Run Code Online (Sandbox Code Playgroud)
是否可以使用不止一次引用特定脚注rmarkdown?
一个奇怪的事情正在发生浏览一个简洁的书籍示例与Chrome和Edge显示GitBook工具栏.但是,当使用带有Windows 10的Internet Explorer 11时,工具栏不显示但正在工作.
Versie:11.98.16299.0
Updateversies:11.0.48(1 <84047206)
最初我认为这是一个浏览器问题,直到我访问了bookdown:使用R Markdown创作书籍和技术文档,工具栏显示使用相同的IE11浏览器.
我希望它在_output.yml中但可以找到它,css的位置可能是根本原因.
bookdown::gitbook:
highlight: default
css: css/style.css
config:
toc:
collapse: section
download: null
toolbar:
position: fixed
search: yes
sharing:
facebook: no
twitter: no
google: no
weibo: no
instapper: no
vk: no
all: []
Run Code Online (Sandbox Code Playgroud) 我有一些 R markdown,其中包含以下代码:
```{r huff51, fig.show='hold', fig.cap='Design decisions connecting research purpose and outcomes [@huff_2009_designingresearchpublication p. 86].', echo=FALSE}
knitr::include_graphics('images/Huff-2009-fig5.1.svg')
```
Run Code Online (Sandbox Code Playgroud)
当使用 bookdown 生成 HTML 输出时,一切都按预期进行。
当使用 bookdown 生成 PDF 输出时,我收到一条错误消息! LaTeX Error: Unknown graphics extension: .svg.
这是可以理解的,因为 knitr 使用 Latex\includegraphics{images/Huff-2009-fig5.1.svg}来包含图像。所以,这本身并不是一个错误。
有没有更好的方法来包含 SVG 图像,这样我就不需要将其预处理为 PDF 或 PNG 等图像?
我使用以下模板
---
title: "Nice try buddy"
author: "SpaceMan"
date: "13 December 2057"
output:
bookdown::pdf_document2
header-includes:
- \usepackage{booktabs}
- \usepackage{longtable}
- \usepackage{array}
- \usepackage{multirow}
- \usepackage[table]{xcolor}
- \usepackage{wrapfig}
- \usepackage{float}
- \usepackage{colortbl}
- \usepackage{pdflscape}
- \usepackage{tabu}
- \usepackage{threeparttable}
- \usepackage{threeparttablex}
- \usepackage[normalem]{ulem}
- \usepackage{makecell}
---
---
references:
- id: fenner2012a
title: One-click science marketing
container-title: Nature Materials
volume: 11
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```
## Title
\begin{equation}
f\left(k\right)=\binom{n}{k}p^k\left(1-p\right)^{n-k} \label{eq:binom}
\end{equation}
You may refer to it using `\@ref(eq:binom)`, e.g., …Run Code Online (Sandbox Code Playgroud) 突然,我在 Markdown/Bookdown 中编织到 PDF 时遇到错误。我的系统没有任何改变。
错误是由“水平规则”引起的,即 --- 或 *** 在降价中的任何地方,尽管两边都有行空间。
我包含了一个简单的违规示例——它不会编入 PDF。
顺便说一下,编织成另一种格式不会引起问题,没有水平线的编织成 PDF 也不会产生错误。此外,交换 --- 为 *** 以探索这是否解决了错误。它没。
任何人都可以提供任何见解吗?
分别使用 TinyTex 和 MikteX(未安装在一起)。既不能解决问题。才刚刚遇到这个问题。以前编织没有问题的文件现在在遇到 --- 或 *** 时失败。
## R Markdown
Some text, then I want horizontal rule
---
Some text after the horizonatal rule.
Run Code Online (Sandbox Code Playgroud)
! Missing number, treated as zero.
<to be read again>
\protect
l.146 ...nter}\rule{0.5\linewidth}{\linethickness}
\end{center}
Error: Failed to compile K.tex. See https://yihui.name/tinytex/r/#debugging for debugging tips. See K.log for more info.
Execution halted
Run Code Online (Sandbox Code Playgroud)