Pandoc: software livre permite conversão de documentos na linha de comando do Linux

por | 05/08/2022 | Software open source

Pandoc é uma daquelas ferramentas que você deve instalar no seu computador e deixar em stand by: uma hora ou outra você precisará dele.

Suportando mais de 40 formatos de arquivo diferentes, o software licenciado através da GPL é poderoso e ao mesmo tempo fácil de usar.

Através deste guia, você conhecerá detalhes essenciais a respeito da ferramenta open source.

Além disso, este conteúdo também cobre a instalação do software em várias distribuições Linux, assim como fornece detalhes sobre o uso da ferramenta.

A partir de hoje você lidará de forma bem mais tranquila com a tarefa de conversão de documentos.

O que é o Pandoc?

Criado em 2006 pelo professor de filosofia norte-americano John MacFarlane, o software open source é um verdadeiro “canivete suíço” dos conversores de arquivos.

Definido por seu criador como um universal document converter (ou conversor de documentos universal), o programa pode muito bem substituir várias outras ferramentas.

Funcionando totalmente à partir da linha de comando, o Pandoc, por outro lado, é muito fácil de usar. A sintaxe dos comandos é simples, e você trabalha basicamente informando o arquivo de entrada e o de saída.

Converter um arquivo Markdown para PDF através do Pandoc, por exemplo, é muito simples. Tudo acontece de forma bem rápida (dependendo do tipo de arquivo e de seu tamanho), e você ainda pode trabalhar com templates.

Pasta - Pandoc

Na verdade, uma vez que você especifica formatos de entrada e de saída suportados pelo software, tudo transcorre maravilhosamente bem.

Através do Pandoc, você pode exportar livremente suas anotações em Markdown criadas no Obsidian, por exemplo. Pode exportá-las para .ODT, .DOCX, .HTML e até mesmo LaTeX.

A ferramenta, além disso, cria os novos documentos com base no formato escolhido. Ou seja, asteriscos duplos que resultam em negrito no Markdown são transformados na tag <strong> em um HTML.

Em suma, o software livre representa uma ferramenta capaz de resolver muitos “problemas”. Problemas que, muitas vezes, demandariam várias soluções diferentes.

Nesse sentido, vale ressaltar que o número de opções e modos de uso do programa de John MacFarlane é bem alto. Talvez devido a isto, o site oficial conte com extensos manuais.

De qualquer forma, este guia lista os principais modos de uso do software livre, para que você possa converter rapidamente seus arquivos através da Linha de comando do Linux.

Procurei também manter tudo da forma mais simples possível. Dessa forma, temos uma curva de aprendizado menor e resultados com maior agilidade.

Um exemplo prático

Por outro lado, e apenas para dar a você uma ideia de quão fantástico é o Pandoc, segue um exemplo bem prático.

Possuo um arquivo Markdown que contém uma tabela bem grande. E, em Markdown, uma tabela é produzida mais ou menos da seguinte forma:

Coluna1 | Coluna2
------- | -------
Linha | Linha

O “código” Markdown acima gera uma tabela como a abaixo (screenshot do Obsidian):

Pandoc - Tabela em Markdown

Nesse sentido, confira agora uma captura de tela de um trecho de um arquivo PDF gerado à partir de um documento .MD (Markdown) que contém uma extensa tabela:

Percebeu o poder da ferramenta, bem como sua grande versatilidade?

Alguns formatos suportados pelo Pandoc

Antes de mais nada, vamos conferir alguns dos principais formatos de arquivos suportados pelo aplicativo:

FormatoEntrada?Saída?
csvSimNão
docxSimSim
epubSimSim
htmlSimsim
jsonSimSim
latexSimSim
markdownSimSim
mediawikiSimSim
manSimSim
odtSimSim
pdfNãoSim
pptxNãoSim

Como instalar o Pandoc no Mac e no Windows

O site oficial da ferramenta lista vários sistemas operacionais. Assim, é possível instalá-la no Windows e no Mac, além do FreeBSD.

De fato, o software é oferecido de diversas maneiras, sendo possível inclusive compilá-lo a partir do código fonte.

Apesar de não ser o foco deste artigo, seguem abaixo os comandos para instalação do Pandoc no Mac e no Windows.

Mac, via Homebrew:

brew install pandoc

Windows, via Chocolatey:

choco install pandoc

Como instalar o Pandoc no Linux

Agora que você já sabe um pouco mais a respeito do Pandoc, que tal aprender a instalá-lo em várias distros Linux?

Algumas dependências necessárias no Linux

Antes que você instale a ferramenta em sua distro, porém, é necessário instalar algumas dependências.

Este é um procedimento extra, que acabei percebendo como necessário pouco depois de iniciar o uso do software.

Obs: você deve realizar este procedimento adicional apenas se desejar trabalhar com arquivos PDF.

Linux - Dependências

Além disso, dependendo das tarefas de conversão que você for realizar, e dado o enorme escopo do programa, pode ser que novas dependências surjam.

Neste caso, você deve verificar as mensagens de erro na linha de comando e realizar os devidos ajustes/instalações.

Em primeiro lugar, use o comando abaixo no terminal, para instalar a primeira dependência:

sudo apt install texlive-latex-base

Em seguida, use o seguinte comando:

sudo apt install texlive-latex-extra

Depois que os pacotes acima forem instalados, prossiga de acordo com sua distro.

Obs: caso você tenha alguma dúvida a respeito dos pacotes acima, confira este artigo (veja a seção sobre o site “Ubuntu Packages”, da Canonical).

Como instalar o Pandoc no Debian, Ubuntu e derivados

sudo apt install pandoc

Como instalar o Pandoc no Arch Linux, Manjaro e derivados

sudo pacman -Syu pandoc

Instalando o Pandoc no Fedora

sudo dnf install pandoc

Como instalar o Pandoc no openSUSE

sudo zypper install pandoc

Iniciando com o básico

O software desenvolvido por John MacFarlane funciona, até onde sei, de modo idêntico em todos os sistemas operacionais para os quais ele está disponível.

Assim, por exemplo, temos os mesmos comandos e opções. Apenas o modo de lidar com caminhos deve ser modificado.

Ou seja, enquanto no Windows trabalhamos com c:\, por exemplo, no Linux usamos / (barras), e assim por diante.

Computador

Além disso, vale lembrar que, através do Pandoc, você pode escrever um texto apenas uma vez e a partir daí publicá-lo em um grande número de formatos.

Um documento gerado no formato ODT, por exemplo, pode ser exportado, através da ferramenta, nos formatos LaTeX, PDF, HTML e até mesmo DOCX.

Vale também a pena destacar o diretório de templates (/usr/share/pandoc/data/templates/). Ele conta com modelos para uma série de formatos, e você pode customizá-los conforme suas necessidades.

Como usar o Pandoc no Linux

Em primeiro lugar, você deve abrir o terminal. Lembrando mais uma vez, o software funciona através da linha de comando. Sua sintaxe básica é similar a abaixo:

pandoc entrada.extensao opcoes saida.extensao

Ou seja, para converter um arquivo ODT em um PDF, o comando deve ser o seguinte:

pandoc teste.odt -o teste.pdf

Obs: a opção -o indica a saída através de um arquivo.

É importante lembrar que a ferramenta de conversão trabalha no diretório em que você está. Porém, é também possível trabalhar com caminhos absolutos ou relativos. Veja um exemplo:

pandoc teste.odt -o /home/usuario/Downloads/teste.pdf

E assim por diante!

Assim, vamos agora a alguns exemplos práticos, para que você aprenda a converter diversos formatos de documentos através do Pandoc.

Para facilitar, trabalharei em um único diretório em meu sistema Linux. Mas você já sabe que é possível trabalhar de outras formas, conforme expliquei acima.

Você deve apenas ter o cuidado de alterar os comandos de acordo com suas necessidades, formatos e nomes de arquivos.

Como lidar com nomes de arquivos extensos e/ou com espaços

Se você tiver arquivos com nomes extensos ou, principalmente, que contenham espaços, é preciso usar uma “\” entre os nomes. Por exemplo:

Nome de arquivo.html

Deve ser inserido no comando da seguinte forma:

Nome\ de\ arquivo.html

Para ser mais exato, o comando abaixo (que provocará um erro):

pandoc Nome de arquivo.html -o Nome de arquivo.pdf

Deve ser alterado conforme o exemplo abaixo:

pandoc Nome\ de\ arquivo.html -o Nome\ de\ arquivo.pdf

Ou seja, você deve usar uma \ sempre que um espaço for necessário (de acordo com os nomes dos arquivos).

Obs: eu não recomendo o uso, porém, o Pandoc também trabalha normalmente com nomes de arquivos com acentuação.

Convertendo sem um documento, na própria linha de comando

Este talvez não seja o modo de uso mais apropriado. Porém, vale a pena conhecê-lo, até mesmo para ter uma ideia de como alguns aspectos da ferramenta funcionam “por baixo dos panos”.

Assim, digitei um texto em Markdown direto na linha de comando, conforme você pode ver abaixo (isto pode ser feito simplesmente através do comando pandoc seguido de um ENTER).

Ao pressionar CTRL+D, encerrando a digitação, o programa rapidamente transforma todo o Markdown em HTML:

Pandoc - Texto convertido no terminal

Observe que ao pressionar CTRL+D, todo o Markdown foi convertido em HTML, com a correta aplicação das devidas tags. A partir daqui, basta copiar e colar, para usufruir do resultado.

Pandoc: convertendo arquivo ODT para PDF

Para converter rapidamente um ODT em um PDF, use um comando semelhante ao abaixo:

pandoc testes.odt -o testes.pdf

Agora, repare em um trecho do PDF gerado:

Pandoc - Conversão ODT para PDF

Perfeito, não?

Pandoc: convertendo arquivo DOCX para ODT

Do mesmo modo, converter um arquivo DOCX (usado, por exemplo, no processador de textos da Microsoft) em um ODT é também bem simples, como você verá abaixo:

pandoc testes.docx -o testes.odt

O inverso também pode ser feito, ou seja, ODT para DOCX. Aliás, dê uma olhada na tabela constante neste guia (veja acima), pois ela lista os formatos e também quais podem ser usados como entrada e/ou saída.

Pandoc: convertendo arquivo Markdown para epub

Agora, observe como também é simples converter um arquivo .MD em um epub:

pandoc testes.md -o testes.epub

Pandoc: como converter uma página web para pdf

O software livre também permite que você trabalhe com “documentos remotos”. De forma mais precisa: você pode inserir a URL de uma página qualquer, e o Pandoc a converterá.

Por exemplo, para converter uma página web para PDF, use um comando similar ao abaixo:

pandoc -s -r html https://kernel.org/category/about.html -o testes.pdf

O Pandoc faz o download de todo o conteúdo, incluindo imagens, e então gera o PDF, conforme solicitado.

Pandoc: convertendo vários arquivos ao mesmo tempo

O prático e poderoso programa também aceita vários arquivos como entrada. Ou seja, você pode combinar vários documentos, por exemplo, e gerar um único PDF.

Este arquivo resultante terá, então, o conteúdo de todos os arquivos de entrada. Por exemplo, o comando abaixo “captura” dois documentos ODT e cria um único PDF a partir deles (com todo o conteúdo incluso):

pandoc testes1.odt testes2.odt -o arquivogrande.pdf

Você pode especificar quantos arquivos de entrada forem necessários. Além disso, caso você queira converter todos os arquivos de um mesmo tipo em um diretório, é possível digitar menos caracteres.

Ou seja, você pode utilizar um curinga, conforme abaixo:

pandoc *.odt -o arquivogrande.pdf

O comando acima, portanto, considerará todos os arquivos ODT existentes no diretório, e gerará um único PDF a partir deles.

Pandoc: convertendo outros tipos de arquivos

Depois que você pega o jeito, tudo fica muito simples. Trabalhar com o Pandoc não é difícil, como você provavelmente percebeu.

Documentos

Além disso, você sempre pode usar a tabela que inseri neste tutorial (veja acima) para identificar os tipos de arquivos e quais deles podem ser usados como entrada e/ou saída.

Nesse sentido, é válido também lembrar que os comandos básicos para conversão de documentos são os descritos acima.

Você deve apenas realizar os ajustes necessários nos mesmos, de acordo com suas necessidades, nomes e tipos de documentos.

Além disso, no site oficial da ferramenta há uma página bem interessante, repleta de exemplos de uso (ou demonstrações). Você pode acessá-la através deste link.

Conclusão

E assim chegamos ao fim de mais um guia completo no TecLinux. Desta vez, você conheceu o Pandoc, ferramenta open source para conversão de documentos diretamente na linha de comando.

O Pandoc é poderoso e bastante versátil, como você pôde perceber. E embora este guia seja focado no Linux, vale ressaltar que os comandos funcionam em qualquer plataforma.

Rodando apenas na linha de comando, o software criado por John MacFarlane não decepciona em momento algum. Pelo contrário: ele é repleto de recursos e opções extremamente úteis.

O Pandoc é um verdadeiro “canivete suíço” quando se trata de tarefas de conversão de arquivos. E, como eu disse no início deste guia, instale a ferramenta no seu sistema e deixe-a em stand by: cedo ou tarde você precisará dela.

Gostou do conteúdo? Deixe um comentário: adorarei conhecer sua opinião!

Compartilhe este conteúdo:

<a href="https://teclinux.com/author/marcos-zy/" target="_self">Marcos A.T. Silva</a>

Marcos A.T. Silva

Apaixonado por tecnologia desde tenra idade, trabalha com TI há mais de 20 anos. Tem no rock and roll (em suas mais variadas vertentes) uma válvula de escape, e adora escrever guias e tutoriais, além de ser um grande entusiasta do Linux e do software livre.

0 comentários

Enviar um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Pin It on Pinterest

Share This

Compartilhe

Compartilhe este post com seus amigos!