3 Estructura del libro
La estructura básica de un proyecto bookdown por default:
directory/
├── index.Rmd
├── 01-intro.Rmd
├── 02-literature.Rmd
├── 03-method.Rmd
├── 04-application.Rmd
├── 05-summary.Rmd
├── 06-references.Rmd
├── _bookdown.yml
├── _output.yml
├── book.bib
├── preamble.tex
├── README.md
└── style.css
index.Rmd
: Es el único documento Rmd que contiene un YAML y es el primer capítulo del libro SIEMPRERmd files
: Son los múltiples capítulos del libro contenidos cada uno en un archivo Rmd diferente_bookdown.yml
: Un archivo de configuración_output.yml
: especifica el formato de HTML, LaTeX/PDF y e-booksbook.bib
: contiene la bibliografía en formato .bibpreamble.tex
ystyle.css
: Se usan para la apariencia y los estilos del output
3.1 index.Rmd
Este es el archivo más importante de nuestro book pues aquí definimos características particulares como el nombre, autor, fecha, output, bibliografía y más que detallaremos en los siguientes capítulos.
Un primer boceto podría ser:
title: “Bookdown”
author: “Yihui Xie”
date: “11 de marzo de 2019”
site: bookdown::bookdown_site
output: bookdown::gitbook
bibliography: [book.bib, packages.bib]
biblio-style: apalike
link-citations: yes
description: “This is a minimal example of using the bookdown package to write a book.”
3.1.1 SITE
- bookdown::bookdown_site
- bookdown::publish_book()
3.2 Rmd files: Capítulos
Una ventaja de Bookdown es que los capítulos pueden venir de uno o más archivos RMarkdown dentro de los cuales definiremos los niveles de la siguiente forma:
Para el título se utilizará al inicio un #, para un segundo nivel ## y ### para un tercer nivel.
De forma predeterminada,si los capítulos provienen de más de un archivo aparecerán ordenados alfabeticamente ya que bookdown combina todos los archivos Rmd por orden de nombres de archivos. Por ejemplo, 01-intro.Rmd aparecerá antes de 02-literature.Rmd. Los nombres de archivo que comienzan con un guión bajo _
o algun caracter especial se omiten a menos que se defina el orden con un comando especial.
Ejemplo
rmd_files: ["index.Rmd", "abstract.Rmd", "intro.Rmd"]
3.2.1 Formato de Encabezados
- Para NO enumerar los “capítulos” se tendrá que poner “{-}” después del nombre de este y si queremos que sea un apartado se usará la siguiente sintaxis:
# (PART) NOMBRE DEL APARTADO {-} No numerado
- Para escribir un apéndice tenemos la siguiente sintaxis, TODOS los capitulos posteriores serán considerados apéndices y serán ordenados con letras
# (APPENDIX) Appendix {-}
3.3 _bookdown.yml
Te permite especificar configuraciones opcionales para construir el libro. Por ejemplo, es posible que desee anular el orden en que se combinan los archivos incluyendo el campo rmd_files
:
rmd_files: ["index.Rmd", "02-literature.Rmd", "01-intro.Rmd"]
3.4 _OUTPUT.yml
Usualmente generamos nuestros escritos en herramientas como LaTeX o Word lo cual nos puede arrojar un documento en PDF, gracias a Bookdown podemos pasar de un input RMarkdown a un output en multiples formatos como los son PDF, HTML, EPUB… Esto se puede configurar con lo siguiente:
- bookdown::pdf_book
- bookdown::gitbook
- bookdown::html_book
- bookdown::epub_book
- bookdown::render_book()
Una gran ventaja de que nuestro libro tenga una versión en HTML es la posibilidad de incluir ejemplos utilizando Shiny applications o HTML widgets.
split_by: chapter section
The bookdown package includes the following output formats:
- HTML:
gitbook
html_book
tufte_html_book
- PDF:
pdf_book
- e-book:
epub_book
- Single documents:
html_document2
tufte_html2
pdf_document2
tufte_handout2
tufte_book2
word_document2