Apportez votre aide…
Comment travailler à plusieurs sur un rapport ?
Ce tutoriel explique une manière de travailler à plusieurs sur un rapport/document. Cette solution utilise [latex]. D'autres méthodes existent bien sûr, à vous de trouver celle qui correspond le mieux à votre groupe de travail.
Pré-requis
- Avoir des bases en latex
Principe de base
L'important pour travailler à plusieurs sur un rapport latex est de subdiviser le rapport en plusieurs fichiers (par exemple un par chapitre). De cette manière il y aura la possibilité que chacun travaille sur un chapitre de manière individuelle et puisse compiler le chapitre sur lequel il est en train de travailler. Un autre point important est de pouvoir compiler à n'importe quel moment l'ensemble du rapport afin d'avoir une vue d'ensemble correcte.
Les différents fichiers
Les différents fichiers pour faire cela sont les suivants :
- index.tex : Fichier qui permettra de compiler le rapport entier
- header.tex : Fichier qui contiendra les différentes références aux paquets latex, et éventuellement d'autres options et paramètres
- introduction.tex, chapitre1.tex, chapitre2.tex,… : Les différentes parties du rapport à proprement parler.
- compileRapport : Script permettant de compiler l'entièreté du rapport.
index.tex
Le fichier d'index est assez simple, il contient juste les appels aux différents autres fichiers dans l'ordre voulu.
- index.tex
\include{header} %Fichier d'en-téte \begin{document} \input{introduction} \clearpage \input{chapitre1} \clearpage \input{chapitre2} \clearpage \input{chapitre3} \clearpage %etc… \input{conclusion} \end{document}
header.tex
Ce fichier dépendra fortement de vos besoins. Il contiendra tout ce que vous auriez mis au dessus de \begin{document}
dans un fichier latex classique.
- header.tex
\documentclass[twoside,a4paper,12pt,]{article} %Type de doc. \usepackage[french]{babel} %En francais \usepackage[T1]{fontenc} … …
introduction.tex, chapitre1.tex,...
Ces fichiers contiendront le contenu proprement dit de votre rapport. Ils auront tous la structure suivante :
- chapitreX.tex
\include{header} \begin{documen} %Le contenu du chapitre ICI \end{document}
Cela permettra de compiler vos chapitres individuellement puisqu'il contiendront les en-têtes nécessaires pour se faire.
compileRapport
Ce script permettra de compiler tout le rapport. En effet si vous tentez de compiler le fichier index.tex, cela ne fonctionnera pas car chaque chapitre contient les en-têtes et surtout \begin{document}
ce que latex n'aime pas. La compilation ce fait dans le répertoire temporaire /tmp/compileRapport
- compileRapport
#!/bin/sh rapportDir=`pwd` rm -R /tmp/compileRapport/ mkdir /tmp/compileRapport/ cp *.tex /tmp/compileRapport/ cp *.bib /tmp/compileRapport/ #On copie aussi les répertoires contenant les images, les annexes et les autres fichiers nécessaires à la compilation (code sources,...) cp -R Images/ /tmp/compileRapport/ cp -R Annexes/ /tmp/compileRapport/ #On en profite également pour faire un peu de nettoyage rm *.out *.aux *.log *.synctex.gz *.bbl *.blg cd /tmp/compileRapport #On supprime tout les appels au en-tete et les début de documents, sauf pour le fichier index.tex mv index.tex index.texB grep -rl "header" *.tex | xargs sed -i 's/\\include{header}//g' grep -rl "document" *.tex | xargs sed -i 's/\\begin{document}//g' grep -rl "document" *.tex | xargs sed -i 's/\\end{document}//g' mv index.texB index.tex #Compilation proprement dites, ici, la compilation est faites à plusieurs reprises pour avoir les références et la bibliographie pdflatex index.tex bibtex index.aux #Uniquement si on fait une bibliographie. pdflatex index.tex pdflatex index.tex #On place le rapport compilé dans le répertoire de base mv index.pdf "$rapportDir/rapport.pdf"
Donner les droits d'execution sur ce fichier avec la commande chmod +x compileRapport
Synchronisation des fichiers entre les ordinateurs
Bien entendu, il va falloir s'échanger les documents entre vous. Diverses solutions existent, certaines spécifiques à Linux et d'autres multi-plateforme. Pour en citer quelques-uns : Ubuntu One, Dropbox,…
Il y a également possibilité d'utiliser un SVN (pas testé) .
Vous pouvez également vous échanger les documents au fur et à mesures de leurs mises à jours par e-mails ou clé USB mais c'est peut-être (surement) moins pratique.
À faire attention également
Pensez à avoir le même encodage de caractère pour tous les documents.
Placez les images dans un sous-dossier et faites de même pour les autres types de documents qui peuvent être attachées à votre rapport (par exemple des codes Matlab, ou…)
Arrangez-vous pour ne pas modifier le même fichier en même temps : Vous êtes des humains après tout, ça devrait pouvoir se faire assez facilement en communiquant