создание сопутствующих слайдов для проекта уценки - PullRequest
0 голосов
/ 20 сентября 2018

В Rstudio я создаю новый проект и выбираю проект книги, используя bookdown.Встроенный пример работает отлично, как и ожидалось, и я могу скомпилировать 4 книги - gitbook, html, epub и pdf.Отлично.

Следующий очевидный шаг - это одновременное создание слайдов, в значительной степени соответствующих тому, что делает beamer package, с учетом beamer mode и article mode.Поэтому я попытался добавить еще один вывод в коде _ output.yml: bookdown::pdf_document2.В соответствии с документацией, я знаю, что должен определить base_format для использования rmarkdown::beamer, Автор пакета сказал, что я почти прав, см. Эту ссылку для обсуждения .Фрагмент: Я использую это исправленное _output.yml для проекта по умолчанию:

bookdown::gitbook:
  css: style.css
  config:
    toc:
      before: |
        <li><a href="./">A Minimal Book Example</a></li>
      after: |
        <li><a href="https://github.com/rstudio/bookdown" target="blank">Published with bookdown</a></li>
    download: ["pdf", "epub"]
bookdown::pdf_book:
  base_format: rmarkdown::beamer_presentation
  includes:
    in_header: preamble.tex
  latex_engine: xelatex
  citation_package: natbib
  keep_tex: yes
bookdown::epub_book: default
bookdown::pdf_document2:
  includes:
    in_header: preamble.tex
  latex_engine: xelatex
  citation_package: natbib
  keep_tex: yes

, которое является предложением, которое любезно сделал XieYihui.Однако, я получаю ошибку компиляции, когда нужно собрать pdf_book:

Output created: _book/index.html
Error in base_format(toc = toc, number_sections = number_sections, fig_caption = fig_caption,  : 
  unused argument (number_sections = number_sections)
Calls: <Anonymous> ... <Anonymous> -> create_output_format -> do.call -> <Anonymous>
Execution halted

Exited with status 1.

Я потерян - я часами искал решение без успеха.Может ли кто-нибудь любезно помочь мне?Мне очень жаль, что я не смог понять это.XieYiHui оказал невероятную поддержку, и его комментарии показывают, что это правильное место для таких вопросов.Большое спасибо.томас

1 Ответ

0 голосов
/ 20 сентября 2018

Ошибка произошла из-за того, что rmarkdown::beamer_presentation() не имеет аргумента number_sections (вы не можете нумеровать разделы в проекторе; по крайней мере, Pandoc, похоже, не поддерживает его).

Чтобы получитьвокруг этой проблемы вы можете использовать следующий хак, который в основном определяет базовый формат, который отбрасывает аргумент number_sections:

---
title: "Using bookdown with Beamer"
output:
  bookdown::pdf_book:
    base_format: "function(..., number_sections) rmarkdown::beamer_presentation(...)"
    number_sections: false
---

## Plot

See Figure \@ref(fig:foo).

```{r, foo, fig.cap='Hi there', fig.height=4}
plot(1:10)
```
...