I am trying to use latexdiff to compare two .tex files, producing a .pdf with a markup similar to the "track changes" function in Microsoft Word (see https://www.sharelatex.com/blog/2013/02/16/using-latexdiff-for-marking-changes-to-tex-documents.html).

I have downloaded the latexdiff files from CTAN and I have also downloaded Strawberry Perl. I am using MiKTeX to compile my two tex documents.

In the command line (DOS prompt) I have been trying to instruct latexdiff to compare two very simple .tex files: SAMPLE4.tex and SAMPLE5.tex. I have been following the instructions in the USAGE section of the first URL I list here ("...using latexdiff..."), specifically:

"Usage

To compare two documents simply run latexdiff in the command line like so:

latexdiff draft.tex revision.tex > diff.tex"

However, when I enter the following into the command line:

C:\Users\Kathryn\latexdiff SAMPLE4.tex SAMPLE5.tex > diff.tex 

I get the following error message:

Input file SAMPLE$.tex does not exist. at 
C:\Program Files\MiKTeX 2.9\scripts\latexdiff\latexdiff line 513, <DATA> line 20026. 

I suspect the problem is that the computer cannot find the file SAMPLE4.tex and that I need to make SAMPLE4.tex (and presumably also SAMPLE5.tex) available in a directory that I can accurately specify in DOS.

I tried putting my two .tex files in C:\Program Files\MikTeX 2.9\latexdiff but this did not work.

Can anyone here offer me some advice?

  • 3
    SAMPLE$.tex or SAMPLE5.tex (the error message you quote uses the former) – David Carlisle Mar 14 '14 at 15:48
  • Crosspost to latex community – Johannes_B Mar 14 '14 at 17:57
  • 1
    Check with what david wrote above. Also you can't write in program files directory from vista onwards. Navigate to the folder where your tex files are and then use latexdiff (in dos) – user11232 Mar 14 '14 at 23:45
  • 1
    Why do you not use the latexdiff already available in MiKTeX? If not included yet you can install it with the Package Manager. Then you have to be in the folder with the two files you want to compare, not in the program folder of latexdiff. I hope you not only downloaded Strawberry Perl, but also installed it. See BTW also MiKTeX and Perl scripts (and one Python script). – Speravir Mar 15 '14 at 0:00
  • 1
    And almost forgotten: Welcome to TeX.SX! Usually, we don't put a greeting or a “thank you” in our posts. While this might seem strange at first, it is not a sign of lack of politeness, but rather part of our trying to keep everything very concise. Accepting and upvoting answers is the preferred way here to say “thank you” to users who helped you. Note also, that your name automatically appears in the lower right corner of your post. – Speravir Mar 15 '14 at 0:03

I just had to solve this same question. Probably the original poster has moved on, but in case this helps the next person, here is my solution.

Following the steps in: https://www.sharelatex.com/blog/2013/02/16/using-latexdiff-for-marking-changes-to-tex-documents.html

  1. Install Perl

  2. Download latexdiff from CTAN

  3. Unzip the latexdiff files and copy them to the Perl > bin folder (default installation in C: drive)"

Then give the file latexdiff the .pl extension. In other words, go into latexdiff folder. Find the file called "latexdiff" and change it so it reads "latexdiff.pl".

Now put your two tex files into the latexdiff folder

Open command line and go to the latexdiff folder using cd. Your command should look something like this:

cd C:\Perl64\bin\latexdiff

Now it's time to run latexdiff. Run the following line (substituting your own file names):

latexdiff.pl Original.tex Revision.tex > Difference.tex

in command line.

You should find a Difference.tex file in the latexdiff folder. If you compile this in your favorite latex compiler you will see all of the changes.

There may be a smarter way to go about this, but hey, it works :)

Cheers!

I had no issues with this on first attempt and this is what I did. I use MiKTeX on Windows 8.

  1. I used MiKTeX Package Manager (admin) to install latexdiff.

  2. I downloaded and installed Strawberry Perl.

  3. I searched for "cmd" on start menu/window search and saw perl(command line)

I opened perl(command line) and changed directory to the directory where my oldfile.tex and newfile.tex was (both in same folder).

Then I executed latexdiff oldfile.tex newfile.tex > diff.tex on the shell prompt.

It generated a diff.tex file in the same folder which I compiled using MiKTeX to get the diff.pdf file.

  • 1
    This process has worked for me time and again. Every time I go looking for how to use latexdiff, I find this post again and it is flawless. Wish I could upvote more than once. – Brandon J DeHart Feb 14 at 21:44

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.