Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Tips for collaboratively editing a LaTeX document [closed]

My default setup is to put the tex source in a subversion repository and insert notes to each other as comments in the source when making changes to other people's content. It all feels pretty sub-optimal, especially when there are subversion conflicts where all it tells you is "these two versions of this huge paragraph are in conflict."

I've come up with a few tricks but I'm sure there are much better ideas (or better versions of my ideas) out there.

For collaborating on code, see this question:

How do you collaborate with other coders in real time?

(Some of those answers will apply to collaboration on LaTeX documents as well.)

like image 893
dreeves Avatar asked Feb 12 '09 02:02

dreeves


People also ask

Can two people edit Overleaf at the same time?

Yes! Overleaf supports simultaneous collaborative editing like Google Docs.

Can you collaborate on LaTeX?

As the LaTeX system uses plain text, you can use synchronous collaborative editors like Gobby. In Gobby you can write your documents in collaboration with anyone in real-time.

How do you close a document in LaTeX?

The body of a LaTeX document is where all of the text, equations, figures, tables, etc... will be placed. The body of the document begins with the command \begin{document} and ends with the command \end{document}.

Can you share Overleaf with others?

Overleaf v2 allows sharing with links, or confidentially via email.


1 Answers

Always end each sentence with a newline. Never reformat paragraphs. These rules not only minimize spurious conflicts but also make your collaboratively edited paper easier to revise.

For author commentary I use marginal comments:

\long\def\authornote#1{%
        \leavevmode\unskip\raisebox{-3.5pt}{\rlap{$\scriptstyle\diamond$}}%
        \marginpar{\raggedright\hbadness=10000
        \def\baselinestretch{0.8}\tiny
        \it #1\par}}
\newcommand{\simon}[1]{\authornote{SLPJ: #1}}
\newcommand{\norman}[1]{\authornote{NR: #1}}
\newcommand{\john}[1]{\authornote{JD: #1}}

We put these in the margin because frequently we're preparing a paper to strict length limits, and we want the marginal notes not to change the length of the paper. Marginal notes are then turned off by

\long\def\authornote#1{\relax}

I also invented the nbibtex tool (now in Debian!) so that you can use different .bib files from your coauthors without having to agree on arbitrary BibTeX keys. nbibtex works like BibTeX except that it uses key words from author, title and other fields. Each author's BibTeX file can be different, but if the paper is there, nbibtex will find it.

like image 80
Norman Ramsey Avatar answered Oct 13 '22 01:10

Norman Ramsey