3
votes

I'd like for a chapter to appear before the table of contents (but after the title page) in the pdf_book output of Bookdown.

One way to do this is to add the chapter to a .tex file and and link it using before_body:. However, this means the chapter will not appear in gitbook (which I also need). I'd prefer not to keep both a .tex and .Rmd version of the same chapter.

An ideal solution would be if the chapter could be kept in a .Rmd file, and its contents extracted into the before_body for pdf_book. That way it's still available for gitbook. Though I'm not sure how I might do that, or indeed if it's possible?

Is there a solution? Or is it exceeding the limits of Bookdown's flexibility?

Any help would be greatly appreciated, thanks!

1
I guess you could put \tableofcontents somewhere in your markdown, and remove it from the pandoc template...mb21

1 Answers

6
votes

One can trigger ToC creation manually in the document, which gives more control over its placement. Of course, automatic table of contents creation should be disabled:

---
title: "MWE"
output:
  bookdown::pdf_book:
    toc: False
---

```{r child = 'file-you-want-to-include.Rmd'}
```

```{=latex}
% Trigger ToC creation in LaTeX
\tableofcontents
```

# Rest of your document starts here

The downside is that this only works with PDF output, not HTML.