Latexdiff
latexdiff is a Perl script, which compares two latex files and marks up significant differences between them (i.e. a diff for latex files). Various options are available for visual markup using standard latex packages such as "color.sty". Changes not directly affecting visible text, for example in formatting commands, are still marked in the latex source.
A rudimentary revision facilility is provided by another Perl script, latexrevise, which accepts or rejects all changes. Manual editing of the difference file can be used to override this default behaviour and accept or reject selected changes only.
The author is Frederik Tilmann, email:
I gratefully acknowledge all contributors of bug fixes, enhanced features, bug reports and people who have suggested features. If you would like to become a developer for latexdiff, get in touch.This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 3 as published by the Free Software Foundation.
Requirements
Perl 5.8 or higher must be installed. The latexdiff script makes use of the Perl package Algorithm::Diff (available from www.cpan.org, current version 1.19). You can either install this package, or use the standalone version of latexdiff, latexdiff-so, which has version 1.15 of this package inlined and does not require external installation of the package. Because latexdiff uses internal functions of Algorithm:Diff whose calling format or availability can change without notice, the preferred method is now to use the standalone version.
As an alternative, latexdiff-fast has a modified version of Algorithm::Diff inlined, which internally uses the UNIX diff command. This version is much faster but is dependent on an external "diff" command. Subtle differences in the algorithm of Algorithm::Diff and UNIX-diff mean that the resulting set of differences will generally not be the same as for the standard latexdiff. In most practical cases, these differences are minor, though.
And finally...
If you like latexdiff, in-kind support to latexdiff in the form of encouraging emails, well-documented bug reports, patches, or offers to become a developer is much appreciated. Alternatively, if would like to show your appreciation otherwise, you can contribute an amount of your choice through PayPal (no account needed)
The monies raised this way will be split fourways and disbursed as follows.
- One quarter passed on to berliOS for hosting the project
- One quarter passed on to TUG (TeX User Group) for hosting the CTAN archive and supporting TeX/LaTeX
- One quarter passed on to a charity which supports children at a school in my home town in various ways (Verein LGG)
- The last quarter I will use to buy my children some ice cream (in compensation for the weekends spent on latexdiff; just kidding... )
Disclaimer: as there is no easy way to affect automatic splitting of received contributions, the donated amounts first will go to my account. I am afraid you will have to trust me on the promise to disburse them as outlined above; I will keep records and provide them on request. Transfer of the monies would normally occur once a year, or once a total contribution of 100 EUR is reached, whatever is earlier. If total contributions within a year are less than 20 EUR, I will carry over this amount into the next year rather than making transfers. Finally, in the unexpected case that contributions reach levels that strict adherence to 4. above would be seriously detrimental to the dental and other health of my children, I retain the right to gratify them in some other way.