Zotero et LaTeX

La rédaction du blog Zotero francophone est très heureuse d’accueillir un billet invité de Raphaël Grolimund sur un sujet qui nous tient à cœur et pour lequel nous apprécions particulièrement son expertise, l’interaction entre Zotero et LaTeX. Nous espérons convaincre les utilisateurs de LaTeX d’adopter Zotero, et réciproquement.

« Pipes and valves » flickr photo par speredenn – https://www.flickr.com/photos/jbcarre/5613101469/ – Creative Commons (BY)

Contrairement à LibreOffice, OpenOffice.org ou Microsoft Word, LaTeX n’est pas un traitement de texte. Il s’agit d’un langage et d’un système de composition de documents basé sur TeX datant des années 1980. La rédaction d’un document en LaTeX nécessite donc l’utilisation d’un langage de balisage et de commandes spécifiques, ce qui explique sans doute qu’il n’a pas percé dans le grand public. LaTeX est avant tout destiné à la rédaction de documents scientifiques et techniques, mais même dans le monde scientifique, selon les données publiées par Bosman et Kramer (2016), il n’est utilisé que par 18% des chercheurs. C’est dans les sciences exactes et l’ingénierie qu’il est principalement utilisé (> 40% des chercheurs dans ces domaines l’utilisent), toujours selon Bosman et Kramer (2016).

L’interaction entre Zotero et LaTeX est donc différente de celle que Zotero a avec un traitement de texte. Dans cet article, nous allons voir en quoi, pourquoi et comment concilier Zotero et LaTeX, et comment résoudre les principales difficultés que vous pouvez rencontrer. Notez que ces considérations sont valables pour les diverses variantes de LaTeX (XeLaTeX, LuaTex…).

Nous vous proposons donc le programme suivant :

Commençons donc par nous familiariser avec LaTeX.

LaTeX et BibTeX

Lorsqu’il rédige un document LaTeX, l’utilisateur édite un fichier TeX (dont l’extension est .tex). Il y insère le texte et les commandes. Cela ressemble à ça:

\documentclass[a4paper]{article}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\title{Titre de l’article}
\author{nom de l’auteur}
\date{\today}
\begin{document}
\maketitle
\begin{abstract}
Résumé du document
\end{abstract}
\section{Introduction}
blablabla … \cite{kramer_innovations_2016}
\section{Deuxième section}
blablabla … \cite{mittelbach_latex_2009}
\bibliographystyle{plain}
\bibliography{references}
\end{document}

Il n’est pas nécessaire de décortiquer la totalité de ce code. Seuls 3 éléments sont nécessaires pour comprendre comment travailler avec LaTeX et Zotero :

  1. le premier est \cite{...} qui correspond à une citation dans le texte ;
  2. le second est \bibliography{...} qui indique l’emplacement de la bibliographie (généralement en fin de document) ;
  3. le dernier élément à comprendre est \bibliographystyle{...}, qui correspond au style utilisé pour formater les citations et la bibliographie.

Ces éléments suffisent presque toujours à aider un utilisateur qui rencontre des problèmes avec sa bibliographie dans un document LaTeX… même si vous n’êtes pas vous-mêmes un utilisateur LaTeX :-).

Pour pouvoir citer des références, LaTeX s’appuie sur un fichier BibTeX (dont l’extension est .bib). Ainsi, la commande \bibliography{references} fait appel à un fichier BibTeX intitulé « references.bib ». Seules les références présentes dans ce fichier peuvent être introduites dans le fichier LaTeX. Un fichier BibTeX contient des références qui ressemblent à ça :

@book{mittelbach_latex_2009,
address = {Boston},
edition = {2nd ed., 9th print},
series = {Addison-Wesley series on tools and techniques for computer typesetting},
title = {The LATEX companion},
isbn = {0-201-36299-6},
language = {anglais},
publisher = {Addison-Wesley},
author = {Mittelbach, Frank and Goossens, Michel and Braams, Johannes and Detig, Christine and Rahtz, Sebastian},
year = {2009},
}

La référence ci-dessus est celle d’un livre, elle commence donc par @book. Pour décrire un article, BibTeX commence par @article; pour une thèse, par @phdthesis etc. BibTeX connaît 14 types de documents (Patashnik 1988, pp. 8-9). Par ailleurs, chaque référence possède une clé BibTeX unique (mittelbach_latex_2009 dans cet exemple), utilisée dans l’appel de citation \cite{...}.
Un fichier BibTeX est compréhensible par un humain, mais il est avant tout fait pour être lu par un logiciel. Zotero sait lire et créer un fichier BibTeX. Pour comprendre comment les références contenues dans le fichier BibTeX sont insérées dans un document LaTeX, il faut revenir une minute au fonctionnement de LaTeX. LaTeX utilisant des balises et des commandes, il faut compiler le tout pour produire le document final à chaque fois qu’on procède à une modification. La fig. 1 présente schématiquement les 4 étapes de la compilation.

Fig. 1 Compilation d’un fichier LaTeX (basé sur la Fig. 12.1 de Mittelbach et al. 2009, p. 688)

Détaillons brièvement ces 4 étapes :

  1. LaTeX extrait les appels de citation (les commandes \cite{...}) du fichier .tex et les liste dans un fichier .aux temporaire ;
  2. LaTeX cherche dans le fichier .bib les références correspondant aux appels de citation listés dans le fichier .aux (en se basant sur les clés BibTeX), leur applique un style (défini dans le fichier .bst) et les stocke dans un fichier .bbl temporaire ;
  3. LaTeX reprend les références listées dans le fichier .bbl, ainsi que la bibliographie résultante et les intègre dans le texte ;
  4. finalement, LaTeX passe en revue tout le document une dernière fois afin de mettre à jour les numéro de page, index, etc.

Fig. 2 Code et résultat final d’une esquisse de document LaTeX

Aujourd’hui, le fichier qui découle de ce processus est un PDF, mais ça n’est pas forcément toujours le cas.

Zotero vs BibTeX : avantage Zotero

Dans tous les cas, pour insérer des références et/ou une bibliographie dans un document LaTeX, il faut un fichier BibTeX. Il existe plusieurs manières de créer un fichier BibTeX : à la main (compliqué, long et risqué), export au format BibTeX depuis une plateforme (méthode standard) ou… Zotero. Comme indiqué plus haut, Zotero sait lire et créer un fichier BibTeX, et il existe plusieurs avantages à utiliser Zotero par rapport à la méthode standard.

Zotero offre plusieurs fonctionnalités dont BibTeX est nativement dépourvu, parmi lesquelles nous retenons les suivantes.

Diversité des types de documents

Au-delà d’une base bibliographique des publications que vous souhaitez citer, Zotero vous permet de constituer une base documentaire riche, référençant une grande diversité de types de document (du rapport au billet de blog en passant par la présentation). Vous pouvez ainsi référencer et gérer l’ensemble de vos documents (ceux que vous lisez et ceux que vous produisez) au moyen d’une seule application et d’un seul mode d’organisation.

Récupération d’une référence (et du PDF associé) d’un seul clic

Dans BibTeX, la récupération d’une référence passe par l’export au format .bib proposé sur la plateforme, suivi d’un ajout dans le fichier .bib déjà présent sur l’ordinateur où toutes les références sont regroupées (sauf si c’est pour un nouveau projet).

Zotero, lui, vous permet de faire d’une pierre deux coups en téléchargeant automatiquement le PDF d’un article en même temps que sa référence. Le tout en un seul clic ! Deux conditions doivent toutefois être réunies pour ce faire :

  • vous avez bien activé cette fonctionnalité dans les Préférences > Générales de Zotero, en cochant l’item Joindre automatiquement les fichiers PDF associés lors de l’enregistrement d’un document ;
  • vous avez bien accès à l’article, c’est-à-dire que le PDF est présent sur la plateforme que vous visitez et vous y avez accès (par abonnement ou parce qu’il s’agit d’un article en libre accès).

Zotero ne se limitant pas aux plateformes scientifiques et techniques, il est également compatible avec un plus grand nombre de sources que BibTeX.

Gestion des PDFs et des fichiers joints

BibTeX ne peut pas contenir des fichiers PDFs. Le lien vers un fichier peut y être enregistré, mais Zotero, lui, stocke le PDF et peut même proposer des solutions plus efficaces. Le module complémentaire ZotFile facilite grandement l’organisation des fichiers joints : ajout automatique du dernier fichier téléchargé à une référence, renommage automatique et intelligent des fichiers selon une syntaxe paramétrable, enregistrement des fichiers dans un dossier déterminé (en dehors du dossier zotero\storage), etc.

Synchronisation

Zotero vous permet de synchroniser votre bibliothèque entre différents ordinateurs, et de bénéficier d’une version en ligne de votre bibliothèque. Si la synchronisation intégrale d’une bibliothèque (références + fichiers joints) n’est pas triviale (voir notre précédent billet « Bibliothèque de groupe »), la synchronisation des références seules est très simple à configurer depuis l’onglet Synchronisation des Préférences de Zotero.

Collaboration

BibTeX, tout comme LaTeX, n’a pas été créé à la base pour être un outil collaboratif. Travailler à plusieurs sur un fichier BibTeX passe par son dépôt sur un disque partagé (sans possibilité d’être plusieurs à l’éditer en même temps) ou par un dépôt git (ce qui requiert des compétences particulières). Depuis sa version 2 (sortie en février 2010), Zotero, est quant à lui un outil polyvalent, offrant de multiples modalités pour collaborer (voir notre précédent billet « Bibliothèque de groupe »). Collaborer signifie parfois adopter les outils de ses collaborateurs, et si les vôtres utilisent Word ou LibreOffice vous pourrez toujours utiliser les extensions de traitement de texte de Zotero.

Bonus

Zotero offre enfin quelques fonctionnalités d’un usage marginal mais fort profitables. La Copie rapide vous permet ainsi d’insérer très facilement une référence formatée selon le style bibliographique de votre choix dans la zone de texte d’un autre logiciel (courriel par exemple), d’un simple glisser-déposer de la référence depuis votre bibliothèque Zotero.

À l’image de Firefox, Zotero est également un logiciel modulaire. Si une fonction lui manque, il est possible de créer un module complémentaire pour l’ajouter.

Zotero vs BibTeX : avantage BibTeX

Cependant, Zotero ne peut pas remplacer toutes les fonctions de BibTeX dans la gestion des références dans un document LaTeX. BibTeX reste nécessaire pour articuler entre eux Zotero et LaTeX. Parmi les fonctions que Zotero ne gère, il y a en premier lieu les clés BibTeX.

@book{mittelbach_latex_2009,
address = {Boston},
edition = {2nd ed., 9th print},
series = {Addison-Wesley series on tools and techniques for computer typesetting},
title = {The LATEX companion},
isbn = {0-201-36299-6},
language = {anglais},
publisher = {Addison-Wesley},
author = {Mittelbach, Frank and Goossens, Michel and Braams, Johannes and Detig, Christine and Rahtz, Sebastian},
year = {2009},
}

La clé BibTeX (mittelbach_latex_2009 ci-dessus) est obligatoire et doit apparaître au début de la référence. Elle n’a pas de forme imposée, même si les espaces et les ponctuations y sont interdits. Beaucoup d’utilisateurs LaTeX souhaitent pouvoir manipuler cette clé. Or, elle est absente dans Zotero.

Un deuxième exemple de manipulation facile à faire dans BibTeX et compliquée dans Zotero : les modifications de masse.

Un éditeur de texte étant suffisant pour modifier un fichier BibTeX, il est facile d’effectuer des « rechercher-remplacer » dans l’ensemble de ses références. Une telle fonction n’existe pas dans Zotero.

Le meilleur de LaTeX et Zotero avec BetterBibTeX

Comment concilier les avantages de Zotero et de LaTeX? Revenons un moment sur le schéma de compilation d’un document LaTeX pour y intégrer Zotero.

Comme vous pouvez le voir dans la fig. 3, Zotero n’interagit pas directement avec le fichier TeX. Il produit le fichier BibTeX nécessaire à l’insertion des citations et références dans LaTeX, mais ne peut donc pas influencer leur mise en forme. Le style de citation est géré dans le fichier .bst. Les fichiers CSL de Zotero ne servent donc à rien lorsqu’on travaille avec LaTeX.

Fig. 3 Comment Zotero interagit avec BibTeX et LaTeX

Pour créer un fichier BibTeX depuis Zotero, il faut exporter des références, une collection ou toute la bibliothèque d’un clic droit > Exporter… Notez que la clé BibTeX est créé à la volée lors de l’export.

Fig. 4 Export BibTex depuis la bibliothèque Zotero

L’inconvénient avec cette méthode, c’est qu’il faut refaire la manipulation à chaque fois qu’une modification est apportée à la bibliothèque Zotero. Heureusement, un module complémentaire résout ce problème : BetterBibTeX. Basé sur une idée originale de Robin Wilson (créateur d’Autozotbib, le prédécesseur de BetterBibTeX), ce module permet que les modifications apportées dans sa bibliothèque Zotero soient répercutées automatiquement dans le fichier BibTeX. Notez que l’inverse n’est pas vrai : les modifications apportées dans le fichier BibTeX ne sont pas « remontées » dans Zotero.

L’export automatique peut être sélectif : vous pouvez choisir d’alimenter votre fichier .bib à partir de votre bibliothèque toute entière, ou seulement à partir d’une collection.

Fig. 5 Boîte de paramétrage de BetterBibTeX

 

Pour paramétrer BetterBibTeX, rendez-vous dans Préférences > onglet BetterBibTeX. La fig. 5 présente la boîte de paramétrage de BetterBibTeX. Notez qu’il s’agit de l’interface dans Zotero 4, car la version pour Zotero 5 est en cours de finalisation. Parmi les nombreux paramètres qui peuvent être personnalisés, notons seulement que le format de la clé BibTeX peut être modifié ici. Sans indication contraire de l’utilisateur, BetterBibTeX se repose sur le comportement par défaut de Zotero (1er auteur, 1er mot du titre, année comme dans l’exemple mittelbach_latex_2009).

Nouveautés liées à l’écriture collaborative

Depuis quelques années, de nouveaux outils ont fait leur apparition. Ils permettent de rédiger des articles scientifiques collaborativement, en ligne et Zotero s’y intègre très bien. ShareLaTeX et OverLeaf ont besoin d’un fichier BibTeX, car ce sont en fait des éditeurs LaTeX en ligne. Authorea crée également des documents LaTeX, mais peut, lui, intégrer des références de Zotero grâce à la Copie rapide présentée dans les « Bonus ». Cela nécessite toutefois un réglage préalable : il faut définir BibTeX comme format d’export par défaut dans Préférences > Exportation (cf. fig. 6).

Fig. 6 Paramétrer le format d’export par défaut

Comme elle n’exige pas des utilisateurs de maîtriser les commandes LaTeX, la plateforme Authorea permet à des utilisateurs de LaTeX de collaborer avec des utilisateurs de Word en toute transparence. Mais ça c’est une autre histoire…

Pour découvrir LaTeX

Si votre curiosité a été piquée par LaTeX, voici quelques lectures et un cours pour vous y mettre:

CHEVALIER, Céline, 2007. Latex pour l’impatient. Paris : H&K. ISBN 978-2-35141-016-5. [concis, clair et en français]
LOZANO, Vincent, 2013. Tout ce que vous avez toujours voulu savoir sur LaTeX sans jamais oser le demander: ou Comment utiliser LaTeX quand on n’y connaît goutte. v1.5. Lyon : Framasoft. ISBN 979-10-92674-00-2. [Consulté le 29 octobre 2017]. Disponible librement à l’adresse : https://framabook.org/tout-sur-latex. [publié sous licence Art Libre]
MITTELBACH, Frank, GOOSSENS, Michel, BRAAMS, Johannes, DETIG, Christine et RAHTZ, Sebastian, 2009. The LATEX companion. 2nd ed. Boston : Addison-Wesley. Addison-Wesley series on tools and techniques for computer typesetting. ISBN 0-201-36299-6. [très complet , mais en anglais]
ROUQUETTE, Maïeul, 2012. (Xe)LaTeX appliqué aux sciences humaines [en ligne]. Atramenta. [Consulté le 26 octobre 2017]. Disponible à l’adresse : https://halshs.archives-ouvertes.fr/halshs-00924546 [publié sous licence CC BY-SA 3.0]
MAGUIS, Noël-Arnaud, 2017. Rédigez des documents de qualité avec LaTeX [MOOC]. OpenClassrooms. Disponible à l’adresse : https://openclassrooms.com/courses/redigez-des-documents-de-qualite-avec-latex

Références citées

BOSMAN, Jeroen et KRAMER, Bianca, 2016. Innovations in scholarly communication – data of the global 2015-2016 survey [dataset] [en ligne]. 2016. Zenodo. [Consulté le 29 octobre 2017]. Disponible à l’adresse : http://dx.doi.org/10.5281/zenodo.49583
MITTELBACH, Frank, GOOSSENS, Michel, BRAAMS, Johannes, DETIG, Christine et RAHTZ, Sebastian, 2009. The LATEX companion. 2nd ed., 9th print. Boston : Addison-Wesley. Addison-Wesley series on tools and techniques for computer typesetting. ISBN 0-201-36299-6.
PATASHNIK, Oren, 1988. BibTeXing [en ligne]. 8 février 1988. [Consulté le 28 septembre 2017]. Disponible à l’adresse : http://mirror.switch.ch/ftp/mirror/tex/biblio/bibtex/base/btxdoc.pdf

Remerciements

Un grand merci à la rédaction du blog Zotero francophone pour l’invitation à écrire ce billet, pour leur soutien et leurs suggestions lors de la rédaction.


Vous aimerez aussi...

3 réponses

  1. 6 novembre 2017

    […] Zotero et LaTeX – Le blog Zotero francophone. La rédaction du blog Zotero francophone est très heureuse d’accueillir un billet invité de Raphaël Grolimund sur un sujet qui nous tient à cœur et pour lequel nous apprécions particulièrement son expertise, l’interaction entre Zotero et LaTeX. Nous espérons convaincre les utilisateurs de LaTeX d’adopter Zotero, et réciproquement. « Pipes and valves » flickr photo par speredenn – – Creative Commons (BY) Contrairement à LibreOffice, OpenOffice.org ou Microsoft Word, LaTeX n’est pas un traitement de texte. Il s’agit d’un langage et d’un système de composition de documents basé sur TeX datant des années 1980. La rédaction d’un document en LaTeX nécessite donc l’utilisation d’un langage de balisage et de commandes spécifiques, ce qui explique sans doute qu’il n’a pas percé dans le grand public. L’interaction entre Zotero et LaTeX est donc différente de celle que Zotero a avec un traitement de texte. […]

  2. 6 novembre 2017

    […] Les enjeux sociétaux auxquels elle fait face, les possibilités offertes par les technologies du numérique dans la collecte et le traitement des données de science, la nécessité de conduire des innovations et développements éthiques et responsables sont autant de facteurs influençant le paysage de la recherche du 21ème siècle. Research Data Services in Academic Libraries. 64131 de l open data a l open research data quelles politiques pour les donnees de recherche. ResearcherID, ORCID, IdHAL : enjeux et perspectives des identifiants… Data H2020 FAIR Article. Zotero et LaTeX – Le blog Zotero francophone. […]

  3. 6 novembre 2017

    […] Limites. ResearcherID, ORCID, IdHAL : enjeux et perspectives des identifiants… Zotero et LaTeX – Le blog Zotero francophone. […]

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *