texdiff - Man Page

Compares two (La)TeX documents to create a merged version showing changes, similar to that of 'Change Tracking' in some word processors.


texdiff [--nofloats-n] old.tex new.tex [diff.tex]


The first two files are compared and a new TeX file is output. When the output file is processed with (La)TeX it marks new changes with blue and old text with red with a strike-through line. Furthermore, passages with changes are marked at the margin with grey bars by the LaTeX changebar package (although only after running dvips, in xdvi the bars are one inch too far left to compensate the one inch offset inserted by TeX printer drivers).

texdiff uses and therefore requires the wdiff command to insert these marks. If LaTeX macros are included in those striked out or underlined passages, the latex run will most likely fail. The source of most problems lies in wdiff tearing apart pairs of braces. Therefore texdiff is a perl script that calls wdiff internally and fixes wdiff's output by re-pairing braces again and handling some commonly used LaTeX macros.

For texdiff to work, the following LaTeX code must be inserted in the preamble of the LaTeX document:

 \usepackage{xcolor} \usepackage{ulem} \usepackage{changebar}

Define editing colors ins and del with existing xcolor color names:
\colorlet{ins}{blue} \colorlet{del}{red}

Or from scratch:
\definecolor{ins}{rgb}{0, 0.5, 0}

These macros are NOT automatically interted at \begin{document} like the original scripts did (see the Acknowledgments section below), because this will not work on files of a multi-file document (those included by \include or \input).  Furthermore, if you insert the macros manually, you can tune them as you like, i. e. change text color or position of changebars. Have a look at the documentation of the ulem and changebar packages on how to do this!


--nofloats,  -n

If given, skips contents of figure environments, but does show insertions and deletions in the caption commands. This is done to avoid complex messups in subfloat or complex figure environments.

--debug,  -d

Turns on debugging. Temporary files that contain numbered braces are kept and a raw difference file is written as output file name appended with '-wdiff.tex'. In addition, several regular expression diagnostics are printed. Warning: produces a lot of output.


Mark Doll <markdoll<AT>gmx.net>, Cengiz Gunay <cengique<AT>users.sf.net>.



2009-09-24 perl v5.8.8 User Contributed Perl Documentation