2009-02-12 5 views
9

Моя настройка по умолчанию заключается в том, чтобы поместить источник tex в репозиторий subversion и вставить примечания друг к другу в качестве комментариев в источнике при внесении изменений в контент других людей. Все это выглядит довольно неоптимальным, особенно когда есть конфликты подрывной деятельности, где все, что он говорит вам, это «эти две версии этого огромного абзаца находятся в конфликте».Советы по совместному редактированию документа LaTeX

Я придумал несколько трюков, но я уверен, что есть намного лучшие идеи (или лучшие версии моих идей).

Для совместной работы над кодом, см этот вопрос: (. Некоторые из этих ответов будет применяться к сотрудничеству по LaTeX документов, а)

How do you collaborate with other coders in real time?

+0

Более важный вопрос: как вы можете использовать своих соавторов для использования Subversion? :) – ShreevatsaR

ответ

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 найдет его.

+0

Смарт! Спасибо, Норман! Замечания маржи - хорошая идея, хотя иногда они могут перегружаться. Переключение между вами и моим может быть лучшим из обоих миров. Кроме того, nbibtex звучит потрясающе; Я взволнован, чтобы попробовать это. Еще раз спасибо! – dreeves

7

Чтобы смягчить проблему бесполезных конфликтов подрывной , вы можете принять конвенцию новых строк в конце предложений. (Это также облегчает переставить или закомментировать, или комментарий на, предложения.)

Что касается замечаний друг к другу в исходном тексте, я считаю, что лучше сделать эти появляются в 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.} и он будет отображаться красным цветом в PDF до тех пор Comments установлен в 1 .