Documentos dinâmicos

Classes de documentos em Rmarkdown

Prof. Walmes Zeviani

2018-04-17

Objetivo e justificativa

Justificativa

Objetivos

Classes de documentos

Classes no pacote rmarkdown

Comparação entre ioslides e slidy: http://yintingchou.com/others/2017/05/26/ioslides-slidy.html.

library(rmarkdown)

# Classes de documentos.
x <- ls("package:rmarkdown")
sapply(c("_document$", "_presentation$", "_handout$", "_fragment$"),
       FUN = grep,
       x = x,
       value = TRUE)
## $`_document$`
## [1] "github_document" "html_document"   "latex_document"  "md_document"    
## [5] "odt_document"    "pdf_document"    "rtf_document"    "word_document"  
## 
## $`_presentation$`
## [1] "beamer_presentation"     "ioslides_presentation"  
## [3] "powerpoint_presentation" "slidy_presentation"     
## 
## $`_handout$`
## [1] "tufte_handout"
## 
## $`_fragment$`
## [1] "html_fragment"  "latex_fragment"
# Local dos templates para as classes de documento do `rmarkdown`.
sf <- system.file(package = "rmarkdown")
x <- system(sprintf("tree -L 2 %s/rmd", sf), intern = TRUE)
cat(x, sep = "\n")
## /usr/lib/R/site-library/rmarkdown/rmd
## ├── fragment
## │   ├── default.html
## │   └── default.tex
## ├── h
## │   ├── bootstrap-3.3.5
## │   ├── default.html
## │   ├── font-awesome-4.5.0
## │   ├── highlightjs
## │   ├── ionicons-2.0.1
## │   ├── jquery-1.11.3
## │   ├── jquery-AUTHORS.txt
## │   ├── jqueryui-1.11.4
## │   ├── jqueryui-AUTHORS.txt
## │   ├── _navbar.html
## │   ├── navigation-1.1
## │   ├── pagedtable-1.1
## │   ├── rmarkdown
## │   ├── rsiframe-1.1
## │   └── tocify-1.9.1
## ├── ioslides
## │   ├── default.html
## │   ├── ioslides-13.5.1
## │   └── ioslides_presentation.lua
## ├── latex
## │   ├── default-1.14.tex
## │   ├── default-1.15.2.tex
## │   ├── default-1.17.0.2.tex
## │   └── default.tex
## └── slidy
##     ├── default.html
##     └── Slidy2
## 
## 18 directories, 13 files

As outras classes

As classes para os documentos odf_document, word_document e rtf_document não estão no pacote rmarkdown. Eles são gerados pela conversão do arquivo markdown pelo pandoc para estes formatos finais de saída, ou seja, no pandoc eles são chamados pela flag de conversão --to odt, --to rtf e --to docx. Dessa forma, a customização destes tipos de documentos pode exigir mais conhecimento da engine pandoc.

Nas imagens a seguir mostram a aparência destes documentos.

bookdown

library(bookdown)
x <- ls("package:bookdown")
x
##  [1] "bookdown_site"   "build_chapter"   "calibre"        
##  [4] "clean_book"      "epub_book"       "gitbook"        
##  [7] "html_book"       "html_chapters"   "html_document2" 
## [10] "kindlegen"       "pdf_book"        "pdf_document2"  
## [13] "preview_chapter" "publish_book"    "render_book"    
## [16] "serve_book"      "tufte_book2"     "tufte_handout2" 
## [19] "tufte_html2"     "tufte_html_book" "word_document2"
sf <- system.file(package = "bookdown")
system(sprintf("tree %s/templates", sf))

O bookdown tem as classes html_document2 e pdf_document2 que são melhorias nas respectivas classes do pacote rmarkdown para permitir referência cruzada de figuras, tabelas, equações e seções.

Para mais detalhes sobre as referências cruzadas em bookdown, siga o link: https://bookdown.org/yihui/bookdown/cross-references.html.

Classes contribuídas em outros pacotes

Próxima aula