我的默认设置是将tex源放在subversion存储库中,并在更改其他人的内容时将注释作为源中的注释插入彼此。这一切都感觉非常不理想,特别是当存在颠覆冲突时,所有它告诉你的是“这个巨大段落的这两个版本都存在冲突。”
我想出了一些技巧,但我确信那里有更好的想法(或者我的想法的更好版本)。
有关代码的协作,请参阅此问题:
How do you collaborate with other coders in real time?
(其中一些答案也适用于LaTeX文档上的协作。)
答案 0 :(得分:11)
始终以换行符结束每个句子。 从不重新格式化段落。这些规则不仅可以最大限度地减少虚假冲突,还可以使协作编辑的论文更容易修改。
对于作者评论,我使用边缘评论:
\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}}
我们把这些放在边缘,因为我们经常准备一份严格的长度限制的纸张,我们希望边际注释不要改变纸张的长度。然后通过
关闭边缘音符\long\def\authornote#1{\relax}
我还发明了nbibtex
工具(现在在Debian中!),这样你就可以使用你的共同作者的不同.bib文件,而不必同意任意的BibTeX键。 nbibtex
的工作方式与BibTeX类似,只是它使用来自作者,标题和其他字段的关键词。每个作者的BibTeX文件都可以不同,但如果论文在那里,nbibtex
会找到它。
答案 1 :(得分:8)
为了缓解无助的颠覆冲突问题,您可以在句子末尾采用换行符约定。 (这也可以更容易地重新排列或注释,或者在上添加句子。)
至于文本源中对彼此的评论,我发现最好将它们显示在pdf文档中,但能够将它们关闭以用于最终版本。我使用宏“kibitz
”。要使用它,请将以下内容放在文档的顶部:
\newcount\Comments % 0 suppresses notes to selves in text
\Comments=1 % TODO: set to 0 for final version
\documentclass{article} % or whatever your documentclass
% for comments
\usepackage{color}
\definecolor{darkgreen}{rgb}{0,0.5,0}
\definecolor{purple}{rgb}{1,0,1}
% \kibitz{color}{comment} inserts a colored comment in the text
\newcommand{\kibitz}[2]{\ifnum\Comments=1\textcolor{#1}{#2}\fi}
% add yourself here:
\newcommand{\alice}[1]{\kibitz{red} {[ALC: #1]}}
\newcommand{\bob}[1] {\kibitz{purple} {[BOB: #1]}}
\newcommand{\carol}[1]{\kibitz{cyan} {[CAR: #1]}}
\newcommand{\deb}[1] {\kibitz{darkgreen}{[DEB: #1]}}
\newcommand{\evan}[1] {\kibitz{blue} {[EVN: #1]}}
然后,爱丽丝可以粘贴\alice{Bob must've added the previous sentence which is obviously false.}
之类的内容,并且只要Comments
设置为1,它就会在pdf中显示为红色。