Como usar Pandoc

Enno Nagel

CoAlTI, Hotel Premier Maceió, 28 Outubro 2017

1 pandoc: conversor entre linguagens de marcação

1.1 O que é uma Linguagem de Marcação ?

Uma linguagem de marcação é uma linguagem para formatar o texto e as imagens de uma página. Por exemplo, para formatar uma página visualizada pelo navegador, tal como o Firefox,

<strong>Importante!<\strong>"
    "É **Importante!**"

O resultado da formatação “É Importante!

1.2 O que é pandoc ?

pandoc é um programa (de linha de comando) que converte um arquivo de uma linguagem de marcação a outra: De (entre outras)

a (entre outras)

1.3 O que faz pandoc para mim ?

Converte arquivos do formato

ao formato

1.4 Pandoc versus Programas Especializados: O bem.

Acessibilidade:

Código markdown é texto de fácil leitura.

Em comparação com outras linguagens de marcação:

1.5 Pandoc versus Programas Especializados: O mal.

2 sintaxe markdown: documentação = cola

2.1 Cola

Documentação (= Cola) da sintaxe de Markdown
Documentação (= Cola) da sintaxe de Markdown

2.2

# Itens alistados enfatizados:

- *peso*
- *altura*

#  Itens enumerados negritos:

1. **mãe**
0. **pai**

# Tabela

|        | mãe    | pai    |
|--------|--------|--------|
| peso   | 100 kg | 200 kg |
| altura | 1,20 m | 2,10 m |

2.3

Itens alistados enfatizados:

Itens enumerados negritos:

  1. mãe
  2. pai

Tabela

mãe pai
peso 100 kg 200 kg
altura 1,20 m 2,10 m

3 compilar pandoc: Makefile e Mainfile

3.1 Parâmetros Pandoc

General options:
  --from=FORMAT
   Specify input FORMAT such as markdown, rst, ..
  --to=FORMAT
     Specify output FORMAT such as html, LaTeX, ..
  --output=FILE
     Write output to FILE instead of stdout.

General writer options:
  --standalone
     Produce output with header and footer.
  --table-of-contents
     Include a generated table of contents in output.
  --self-contained
     Produce standalone HTML file without external dep.

3.2 Makefile

O Makefile serve para:

3.3

NAME=palestra
FILES=$(NAME).pandoc intro.md conteudo.md resumo.md

PANDOC_OPTIONS=--stand-alone --filter pandoc-citeproc
PANDOC_LATEX_OPTIONS=--include-in-header header.tex

all: latex pdf
latex: $(FILES)
    pandoc $(PANDOC_OPTIONS) $(PANDOC_LATEX_OPTIONS) \
        --from markdown --to latex \
        $(NAME).pandoc $(FILES) --output $(NAME).tex
pdf: latex
    latexrun $(NAME).tex

run: run_pdf
run_pdf: pdf
    $(PDFVIEWER) $(NAME).pdf >/dev/null 2>&1 &

3.4 Main file

O main file, o arquivo principal, estabelece

Além disso,

3.5 Exemplo

% Pandoc é bem massa!
% [Enno Nagel](mailto:epn@fsfe.org)
% CoAlTI, Hotel Premier Maceió, 28 Outubro 2017

---
lang:                 pt

# latex:
documentclass:        scrartcl
classoption:          final,DIV=calc,bibliography=totoc
fontsize:             12pt
bibliography:         pandoc.bib
...

3.6 Configurando o editor Vim

Compilação automática

Para o editor Vim compilar após guardar o arquivo, acrescente ao arquivo ~/.vim/after/ftplugin/markdown.vim a linha:

autocmd BufWrite <buffer> silent make!

Por exemplo, se o output é

3.7 Site e Repositório

Estão disponíveis

em https://konfekt.bitbucket.io/talks/pandoc,

e

no repositório https://www.bitbucket.org/konfekt/talks/pandoc