frk*_*kbr 8 r r-markdown bookdown
我用R-Markdown的Bookdown-package 创建了一个单独的文档,允许html和pdf输出.我想更改标题标签Figure,Table并Table of Contents改为另一种语言.这是一个最小的例子:
---
title: Dokument auf Deutsch
output:
bookdown::html_document2:
toc: yes
bookdown::pdf_document2:
toc: yes
---
# Erstes Kapitel
Abbildung \@ref(fig:pressure) ist Deutsch.
```{r pressure, echo=FALSE, out.width = "80%", fig.pos='h', fig.cap="Deutsche Bildunterschrift"}
plot(pressure)
```
Run Code Online (Sandbox Code Playgroud)
Bookdown使用英文单词"Figure"作为图标题前缀.编织到pdf_document2时,Bookdown使用英文单词'Contents'作为toc.如何将这些改为'Abbildung'和'Inhalt'?
我在Bookdown手册中阅读了第4.5节国际化.作者建议编辑配置文件_bookdown.yml,其中可以更改标签名称.但是,我找不到这样的配置文件,我的单个Bookdown文档似乎是自包含的.此外,4.5节中的示例并未指出如何更改toc的术语.
我发现这个答案与\renewcommand.这适用于使用时的数字和表格output:pdf_document2,但不适用于output:html_document2.作为一个侧面问题,\renewcommand{\contentsname}{Inhalt}不要在pdf输出中将"内容"更改为"Inhalt".所以\renewcommand不是一个理想的解决方法.
我实际上想使用Bookdown手册上面4.5节中描述的原始解决方案._bookdown.yml当我写一个Bookdown文档时,在哪里可以找到此配置文件?在该文件中我可以更改toc的术语吗?如果我必须首先创建此配置文件,我应该如何做到这一点以及如何将其链接到我的单个Rmd文档?
msc*_*lli 11
如果我将您的示例代码保存为deutsch.rmd然后呈现它,我可以重现您描述的内容.
如果然后创建一个名为_bookdown.yml 在同一个目录作为deutsch.rmd含
language:
label:
fig: "Abbildung "
Run Code Online (Sandbox Code Playgroud)
并重新渲染,"输出"中的"图"替换为"Abbildung".
如果那时我创建了一个名为preamble.texcontains 的文件
\usepackage[german]{babel}
Run Code Online (Sandbox Code Playgroud)
并调整deutsch.rmd要读取的YAML标题
title: Dokument auf Deutsch
output:
bookdown::html_document2:
toc: yes
bookdown::pdf_document2:
toc: yes
includes:
in_header: preamble.tex
Run Code Online (Sandbox Code Playgroud)
PDF输出也切换到德语.
编辑:我刚刚发现自己,这个解决方案似乎等同于使用以下YAML标头:
title: Dokument auf Deutsch
output:
bookdown::html_document2:
toc: yes
bookdown::pdf_document2:
toc: yes
lang: de
Run Code Online (Sandbox Code Playgroud)
请注意,上面的PDF输出解决方案使用"Inhaltsverzeichnis"而不是"Inhalt".
如果您真的想根据自己的喜好简单地更改图形标签和目录标题,而不依赖于babel正确的操作,则可以使用以下代码preamble.tex:
\renewcommand{\figurename}{Abbildung}
\renewcommand{\contentsname}{Inhalt}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1024 次 |
| 最近记录: |