40

I need to highlight the difference between two rather complex math tex-files and get a lot of errors. The files are complex in the math equations, fair enough to get errors, but what if I would like latexdiff to only compare the text OUTSIDE the \begin{align} ... \end{align} environment? Can one specify to exclude/ignore certain environments?

0

1 Answer 1

51

Yes there is a way to do this. latexdiff has a class of environments that it regards as pictures and which it does not check. The value is stored in PICTUREENV and its default is (?:picture|DIFnomarkup)[\w\d*@]*. Writing a config file ld.cfg containing

PICTUREENV=(?:picture|DIFnomarkup|align)[\w\d*@]*

adds the align environment to this list. If this config file is placed in the current directory you can now run

latexdiff -c ld.cfg old.tex new.tex >diff.tex

and the content of your align environments will now be ignored.

6
  • 13
    Note that you do not need to put it in a separate config file. You could also do latexdiff --config="PICTUREENV=(?:picture|DIFnomarkup|align)[\w\d*@]*" Aug 27, 2013 at 9:11
  • @Rabarberski Indeed, remember double dash before config. However, the command starts getting long and one has to be careful about escaping. Aug 27, 2013 at 9:16
  • --config doesn't work for me from the Bash. I get sh: 1: Syntax error: "(" unexpected Something went wrong in latexdiff. Deleting chp1/chp1-diff134.tex and abort. What can I do? Sep 7, 2016 at 15:19
  • @FrankBreitling In the shell you to either escape the many special characters or use single quotes instead. It really is easier with a config file. Sep 7, 2016 at 16:58
  • 3
    As it turned out, this was a bug which got resolved by the developer ftilmann after I reported it. Now it works as of version 1.2.0. For older version use the workaround with additonal single quotes like latexdiff '--config="PICTUREENV=(?:picture|DIFnomarkup|align)[\w\d*@]*"'. Sep 8, 2016 at 10:11

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .