Pandoc é um conversor universal de documentos disponível em Linux, Windows, Mac, etc. Você pode escrever um documento em sua linguagem favorita: markdown, reStructuredText, textile, HTML, DocBook, LaTeX, ou MediaWiki markup e converter automaticamente para quase qualquer formato que quiser.
Atualmente estou usando para escrever meus posts. Eu escrevi esse post em markdown e o converti para HTML usando o Pandoc. Copiei o colei o fonte no blogger, depois fiz uns pequenos ajustes.
Por que eu faço isso? Bem, primeiro que nem sempre consigo tempo para ficar escrevendo direto no blogger. Escrever HTML diretamente é chato, trabalhoso e te deixa muito suscetível a erros. Escrever somente o texto do post, gera um trabalho grande depois de inserir os links e formatações necessárias.
Então, escrevo em markdown que é uma linguagem de marcação que me permite escrever um texto com diretivas de formatação que são simples, bonitas de ler e fáceis de entender por serem humanos mas que consigo converter em código HTML com um comando.
Além de coisas simples como
_itálico_
--> itálico e __negrito__
--> negrito existe um tratamento especial para links.
Por exemplo, vamos tomar o primeiro parágrafo em markdown:
[Pandoc][1] é um conversor universal de documentos disponível em Linux, Windows, Mac, etc.
Você pode escrever um documento em sua linguagem favorita: [markdown][2],
[reStructuredText][3], [textile][4], [HTML][5], [DocBook][6], [LaTeX][7], ou
[MediaWiki markup][8] e converter automaticamente para quase qualquer formato que quiser.
No final do arquivo eu tenho:
[1]: http://johnmacfarlane.net/pandoc/
[2]: http://daringfireball.net/projects/markdown/
O pandoc, ao converter para HTML constrói os links corretamente buscando as referências no final do arquivo. Existem muitas outras formas de criar links mas essa e a minha favorita.
Outro recurso que uso bastante do pandoc é a geração de PDF. Guardo os arquivos como markdown, pois são mais fáceis de ler e editar, mas quando preciso enviar a alguém converto para PDF. E como o pandoc aplica a formatação indicada no markdown, sai um PDF bonito de se apresentar.
Para converter um documento usando pandoc basta fazer:
$ pandoc arquivo_original.md -o arquivo_convertido.pdf
O pandoc cuida de adivinhar os formatos e converter tudo para você.
Para funcionar conversão para pdf o pandoc depende do latex.
Por fim, um recurso muito legal é o de templates personalizados. Com ele, você consegue configurar a formatação do seu documento convertido. Primeiro você obtém uma cópia do tempalte padrão:
$ pandoc -D html > template.html
Então você edita o template ao seu gosto. As palavras cercadas por $ são variáveis. O pandoc substituirá essas variáveis para você. Você também verá uns
if
da vida que verificam se uma variável existe antes de colocar o conteúdo dela em alguma lugar. E também há loops através do for
para variáveis com mais de um valor.
Algumas variáveis são criadas pelo próprio pandoc ao analisar o seu documento, como a variável
$body$
, outras podem ser configuradas via linha de comando, por exemplo, agora vamos colocar tudo junto:$ pandoc arquivo_original.md -o arquivo_convertido.html --template template.html -Vauthor="Fulano Silva"
Nesse exemplo estamos definindo um template a ser usado e estamos passando a variável
$author$
.
Outra opção legal é a
--toc
(table of tontents/tabela de conteúdos) que lista no começo do documento um link para todos os títulos, criando um índice.
Atualmente estou fazendo alguns experimentos para gerar páginas HTML simples a partir de algumas notas que tomo para uso próprio. Como configurar um sistema, usar outro, trechos de shell scripting e etc. Eu anoto tudo em markdown para consumo próprio, mas tenho um script automaticamente gerando essas notas em HTML e compartilhando como páginas de internet a partir do meu computador.
Nenhum comentário:
Postar um comentário