Your company here — click to reach over 10,000 unique daily visitors

latexrevise - Man Page

selectively remove markup and text from latexdiff output


latexrevise [ Options ] [ diff.tex ] > revised.tex


latexrevise reads a file diff.tex (output of latexdiff), and remove the markup commands.  If no filename is given the input is read from standard input. The command can be used in ACCEPT, DECLINE, or SIMPLIFY mode, or can be used to remove user-defined latex commands from the input (see -c, -e, -m, and -n below).  In ACCEPT mode, all appended text fragments  (or preamble lines) are kept, and all discarded text fragments (or preamble lines) are deleted.   In DECLINE mode, all discarded text fragments are kept, and all appended  text fragments are deleted.   If you wish to keep some changes, edit the diff.tex file in advance, and manually remove those tokens  which would otherwise be deleted.  Note that latexrevise only pays attention to the \DIFaddbegin, \DIFaddend, \DIFdelbegin, and \DIFdelend tokens and corresponding FL varieties.  All \DIFadd and \DIFdel commands (but not their contents) are  simply deleted.   The commands added by latexdiff to the preamble are also removed. In SIMPLIFY mode, \DIFaddbegin, \DIFaddend, \DIFdelbegin, \DIFdelend tokens and their corresponding FL varieties are kept but all other markup (e.g. DIFadd and <\DIFdel>) is removed.  The result will not in general be valid latex-code but it will be easier to read and edit in  preparation for a subsequent run in ACCEPT or DECLINE mode.   In SIMPLIFY mode the preamble is left unmodified.


-a or --accept

Run in ACCEPT mode (delete all blocks marked by \DIFdelbegin and \DIFdelend).

-d or --decline

Run in DECLINE mode (delete all blocks marked by \DIFaddbegin and \DIFaddend).

-s or --simplify

Run in SIMPLIFY mode (Keep all \DIFaddbegin, \DIFaddend,  \DIFdelbegin, \DIFdelend tokens, but remove all other latexdiff markup from body).

Note that the three mode options are mutually exclusive.  If no mode option is given, latexrevise simply removes user annotations and markup according to the following four options. These functions can be very useful outside the latexdiff context, too

-c cmd or --comment=cmd

Remove \cmd{...} sequences.  cmd is supposed to mark some explicit  annotations which should be removed from the file before  release.

-e envir or --comment-environment=envir

Remove explicit annotation environments from the text, i.e. remove



-m cmd or --markup=cmd

Remove the markup command \cmd but leave its argument, i.e. turn \cmd{abc} into abc.

-n envir or --markup-environment=envir

Similarly, remove \begin{envir} and \end{envir} commands but  leave content of the environment in the text.

-r cmd or --replace=cmd

For constructions \\cmd{..}{..}, remove the command, leave the  content of first argument, and delete second argument, i.e. turn  \cmd{abc}{def} into abc.

-V or --verbose

Verbose output

-q or --no-warnings

Do not warn users about \DIDadd{..} or \DIFdel{..} statements which should have been removed already.


The current version is a beta version which has not yet been extensively tested. It has not been actively maintained so might not process output of newer versions of latexdiff entirely correctly. Please submit bug reports using the issue tracker of the github repository page https://github.com/ftilmann/latexdiff.git,  or send them to tilmann — AT — gfz-potsdam.de.  Include the serial number of latexrevise (Option --version).  If you come across latexdiff output which is not processed correctly by latexrevise please include the problem file as well as the old and new files on which it is based, ideally edited to only contain the offending passage as long as that still reproduces the problem.

Note that latexrevise gets confused by commented \begin{document} or  \end{document} statements

See Also



latexrevise does not make use of external commands and thus should run on any platform  supporting PERL v5 or higher.


Copyright (C) 2004 Frederik Tilmann

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 3


2021-12-27 perl v5.30.0