Miscellaneous LaTeX/BibTeX Tools

There are many minor utilities that make my life easier when I’m preparing manuscripts in LaTeX. Among them:

  • latexpand is a Perl script that can perform various pre-submission tasks. I frequently use it to expand \input and \include directives, and to remove comments.

  • latexdiff performs a LaTex-aware diff on the text of LaTeX source, resulting in a file you can run through pdflatex. The differences are clearly marked in the resulting PDF. Further, latexdiff understands some version control systems, notably Subversion and Git, so it makes it easy to show where the text of a manuscript has changed compared to previous versions. You do keep your paper sources in version control, right?

  • bibtool is a swiss army knife for BibTeX files. I use it for all sorts of things, most commonly to extract from a master .bib file the list of just the entries used in the current document, for example: bibtool -x paper.aux.

  • dwdiff is a word-level diff tool. It can take as input the output of other diff programs using the --diff-input option; this comes in handy when using svn diff to see source changes. Git has built-in word-level diffs, using the --word-diff (or related --color-words) option to git diff.

Marc Liberatore
Marc Liberatore
Senior Teaching Faculty

My research interests include anonymity systems, file and network forensics, and computer science pedagogy.