Anotações marginais em LaTeX

Em um encontro recente com os professores Leonardo Murta e Vanessa Braganholo, discutimos sobre os prós e contras de usar LaTeX (em oposição a um certo editor de textos proprietário) para produzir documentos científicos.

Um argumento contra o uso de LaTeX é o fato de que o certo editor proprietário permite inserir anotações na forma de “balões” nas margens do texto. É um recurso muito útil quando diversas pessoas trabalham sobre um mesmo documento e precisam enviar recados, comentários e observações (integrados ao documento) umas para as outras.

Na ocasião, argumentei que o uso do certo editor proprietário pode confundir sistemas de controle de versões (pois os documentos são gravados em formato binário, ao contrário do texto comum dos documentos em LaTeX).

Como resposta, ouvi que os sistemas de controle de versão mais avançados possuem módulos especiais para lidar (e.g., fazer diffs) com documentos no formato do certo editor proprietário. Como não uso este formato, não sei se esses módulos tratam corretamente as anotações.

Seja como for, depois de procurar um pouco, encontrei uma solução já implementada para o LaTeX. O pacote pdfmarginpar permite a criação de anotações no arquivo pdf gerado pelo pdflatex.

Eis o código que venho usando (que também depende dos pacotes ifthen e verbatim):

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% PDF notes:

\usepackage{ifthen}
\newboolean{notas}

% To generate pdf notes, change to true
% To omit pdf notes, change to false
\setboolean{notas}{false}

\ifthenelse{\boolean{notas}}%
{%
  \usepackage{pdfmarginpar}
  \pdfmarginparset{
    color=[1 1 0],
    CA=0,
    Name=Insert,
    hoffset=-1em,
    width=0cm,
    height=0ex,
    depth=0ex
  }
  \newcommand{\nota}[1]{\pdfmarginpar{#1}}
}
{%
  \usepackage{verbatim}
  \let\nota=\comment%
}

\begin{document}

Este é o texto.\nota{Esta é uma nota.} Aqui o texto continua.

\end{document}

O segundo argumento de \setboolean determina se as anotações devem ou não ser geradas no pdf produzido. Deve ser deixado como true durante a preparação do documento, e mudado para false quando a versão final (sem as anotações) for produzida.

A documentação do pacote pdfmarginpar explica que este recurso de incluir anotações faz parte da especificação do formato pdf, e que todo o suporte à visualização das anotações é responsabilidade do leitor de pdf onde o arquivo é aberto.

A má notícia é que nem todos os leitores suportam a visualização de anotações. Até agora, testei os seguintes:

  • Skim (Mac OSX): exibe as anotações corretamente e permite a conversão de “anotações pdf” para “skim notes”.
  • Preview (Mac OSX): exibe as anotações corretamente e permite que sejam manipuladas (fonte, cor, etc.).
  • kpdf (Ubuntu): ignora as anotações.

Seria bom se alguém pudesse testar outros leitores de pdf e outras plataformas e postar os resultados aqui.

Também não fiz testes quanto ao conteúdo das anotações, mas acredito que praticamente qualquer código LaTeX válido possa ser incluído.

Advertisements

One thought on “Anotações marginais em LaTeX

  1. Olá Professor,

    Testei no Adobe Reader versão 9.4.1 com o Windows 7, não encontrei nenhum balão (ou ícone), nem anotação nas margens…

    Abraço,
    Danilo

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s