[Tex/LaTex] How to you use LaTeX to write a document with other people

collaborationnotesrevision control

I imagine that many users are or were [PhD] students, so I would like to know: how do you use LaTeX to write a document (like the final dissertation) that requires many revisions from other people.

When I work with my professor, I usually send him a PDF generated by LaTeX and the source files. He then uses a process like such:

  • Define some color for his commentaries or additions to the text

    \usepackage{xcolor}
    ...
    \define{\profSmith}[1]{{\color{red} #1}}
    ...
    Lorem ipsum \profSmith{not very clever}
    
  • He sends me his changes and I check his observations, marking my changes with another \define

  • Repeat until everyone is satisfied
  • For final versions comment defines and replace for \define{\profSmith}[1]{#1}

So yes, it is a bit cumbersome. I have tried margin notes, but space is limited and sometimes the professor's correction are inside some phrases or paragraphs.

I also thought about Version control differences (like svn, mercurial, etc), but my chances are low: everyone but me uses a one-liner for each paragraph. In consequence, I have a hard time checking these differences.

What do you guys [would] use in this case? Any other ideas or comments?

Best Answer

I am using todonotes with enlarged margins. You just enlarge the size of your document and one margin, but you keep the textwidth the same. You need to use the geometry package for that.

I actually wrote a blogpost about it.

A nice point about todonotes is that they are configurable (you can change the colour & background colour of your notes), that way you can define a \todojim{} command, a \todojeff{} command with different colour sets and you will know without any ambiguity who wrote the note.

Of course this would not be complete without a proper version control system. Pick your favourite!