Comment transférer sa base scientifique de Mendeley à Zotero sur Mac
Philippe Gouillou - 16 octobre 2024 - MàJ : 25 octobre 2024
https://gouillou.com/scripts/mendeley-zotero.html
Comment basculer de Mendeley à Zotero sans perdre ses fichiers ni ses tags via un fichier BibTeX.
ATTENTION : il faut modifier ce fichier avant l'import pour ne pas être victime de deux problèmes bloquants. Cette page montre comment faire (tutoriel)
Cette page explique aussi comment ajouter l'ISBN au format de citation (en modifiant un fichier .csl)
Sommaire
1. Synthèse
- Le transfert complet de Mendeley à Zotero est possible via un fichier BibTeX
- Deux problèmes bloquants doivent être résolus par des modifications à effectuer dans un éditeur de texte :
- Les caractères accentués dans les noms de fichiers sont échappés ce qui empêche leur import,
- Zotero ne distingue pas les Tags (ajoutés par l'utilisateur) des Keywords (ajoutés par les auteurs) et regroupe les deux dans des "Marqueurs" ... ce qui est ingérable (beaucoup trop !)
- Cette page explique aussi comment ajouter l'ISBN au format de citation (en modifiant un fichier .csl)

2. Pourquoi
J'utilise Mendeley depuis 2010 et gère avec maintenant 12 142 fiches, quasiment toutes avec des Notes (contenant surtout des références et extraits d'articles de presse sur l'article correspondant, et des citations d'autres articles), et 14,86 Go de fichiers joints. J'ai tout construit autour des Tags qui sont plusieurs centaines (105 commençant par A ou B... plus tous les autres).
Mendeley correspondait parfaitement à mes besoins, sauf sur un point : la complexité du backup. Pour basculer Mendeley sur un nouvel ordinateur sans passer par Time Machine (réinstallation complète), j'ai du aller récupérer des fichiers répartis sur l'ordinateur d'origine.
Mais deux raisons m'ont poussé à basculer :
- Depuis la version 1.8 (2018), Mendeley a encrypté sa base, ne permettant plus de la récupérer directement et compliquant le basculement à un autre outil (il faut passer par un export vers RIS ou BibTeX)
- De plus en plus, Mendeley pousse au basculement vers leur nouvel outil ce qui indique une fin de vie prochaine de celui que j'utilisais. Mais leur nouvel outil ne m'avait pas convaincu quand je l'avais testé (pas de gestion des tags aussi facile), et de toute façon sa base doit être encryptée elle aussi
Après quelques recherches j'ai retenu deux logiciels (tous deux Open Source) : JabRef et Zotero.
JabRef semble très puissant, mais son interface me plait moins et surtout il a deux limites bloquantes :
- Il ne permet pas le filtre par tag : il faut créer des collections, ce qui est ingérable pour des centaines de tags
- Il ne permet pas de copier les citations de plusieurs articles à la fois par un simple raccourci clavier : il faut pour chacun aller copier le texte apparaissant dans l'onglet "Preview"
Il reste donc le plus célèbre, Zotero.
La difficulté a été le transfert.

3. Versions utilisées

4. Transfert
4.1 BibTeX vs. RIS vs Endnote XML
L'export/import est possible dans les trois formats, mais RIS ne permet pas l'import des Tags et je ne connais pas Endnote. Je suis donc passé par BibTeX.

4.2 Opérations préalables dans Mendeley
4.2.1 Vérifier tous les tags
Mendeley permet de modifier les tags de plusieurs articles à la fois très simplement, Zotero en est incapable. Il est donc conseillé de vérifier les tags un à un pour corriger les erreurs de frappe, les doublons (ex : pluriel et singulier), la cohérence majuscules / minuscules (Zotero les distingue), etc. Cela peut aussi être fait dans le fichier BibTeX, mais c'est plus compliqué.
4.2.1.1 Pour modifier les tags dans Mendeley
Cliquer pour afficher/cacher le tutoriel👇
- Sélectionner le tag à modifier ou supprimer
- Sélectionner avec CMD-A toutes les fiches
- Faire apparaître si besoin l'interface de modification avec CMDI
- Modifier ou supprimer le tag voulu dans l'interface de modification

4.3 Export de Mendeley
- Se placer sur All documents dans le panel de gauche
- Cliquer sur une fiche de la colonne du milieu et tout sélectionner par CMDA
- CLIC DROIT → Export...
- Choisir le répertoire de destination
- Dans la fenêtre modale, sélectionner BibTeX (*.bib) et valider
Remarques :

4.4 Opérations dans Visual Studio Code
Des modifications sont à effectuer sur le fichier obtenu, et elles ne peuvent être faites qu'en format texte, c'est-à-dire via un éditeur de texte (on dit aussi "Editeur de code" : Visual Studio Code, Notes+, etc.). Les explications après sont données pour Visual Studio Code, logiciel gratuit de Microsoft, dans sa version Mac. Elles sont suffisamment détaillées pour qu'un complet débutant puisse s'en sortir.
4.4.1 Tags
Uniquement si vous ne l'avez pas fait dans Mendeley (voir section 4.2.1) ou vous apercevez d'un oubli.
4.4.1.1 Pour modifier les tags dans BibTeX avec Visual Studio Code sur Mac
Cliquer pour afficher/cacher le tutoriel👇
- Afficher le fichier sans passage à la ligne via le raccourci clavier OPTIONZ
- Sélectionner à la souris
mendeley-tags = {
(ou keywords = {
si la modification décrite section ci-après (4.4.2) a déjà été faite)
- Sélectionner toutes les occurrences par le raccourci clavier CMDCTRLG
- Etendre la sélection à toute la ligne pour chaque occurrence par le reccourci clavier CMDSHIFT▶
- Ouvrir la fenêtre de recherche par CMDF
- Dans cette fenêtre, à droite, cliquer sur l'icône montrant 3 lignes pour Rechercher dans la sélection
- Dans cette fenêtre, à gauche, cliquer sur l'icône montrant une flèche vers le bas pour ouvrir le formulaire de remplacement
- Rechercher le tag voulu et le remplacer via la fenêtre de recherche
4.4.2 Keywords
Zotero ne distingue pas comme Mendeley les Keywords (de l'article) des Tags (ajoutés par l'utilisateur) et rassemble les deux dans les Marqueurs, ce qui génère des milliers de keywords (totalement ingérable : j'ai du tout effacer et recommencer...).
L'export BibTeX de Mendeley distingue les keywords des mendeley-tags :
keywords = {IQ,TOM,factor analysis,general intelligence,structural equation modeling,theory of mind},
mendeley-tags = {IQ,TOM},
... mais pas Zotero qui, par défaut, les regroupe (heureusement dédoublonnés) dans le champ Keywords ( Zotero a une option activée par défaut pour "Ajouter automatiquement aux documents des marqueurs à partir des mots-clés fournis" mais la désactiver, dans Paramêtres → Général | Divers, ne change rien pour les imports depuis BibTeX).
Pour ne conserver que les tags la solution est de :
- Supprimer totalement la ligne keywords
- Renommer mendeley-tags en keywords
4.4.2.1 Pour remplacer les keywords par les tags dans Visual Studio Code sur Mac
Cliquer pour afficher/cacher le tutoriel👇
- Afficher le fichier BibTeX sans passage à la ligne via le raccourci clavier OPTIONZ
- Sélectionner à la souris
keywords = {
- Sélectionner toutes les occurrences par le raccourci clavier CMDCTRL-G
- Etendre la sélection à toute la ligne pour chaque occurrence par le reccourci clavier CMDSHIFT▶ (flèche droite)
- Effacer par la touche clavier BACKSPACE
- Sélectionner à la souris
mendeley-tags
- Sélectionner toutes les occurrences par le raccourci clavier CMDCTRG
- Taper
keywords
- Sauvegarder par le raccourci clavier CMDS
4.4.3 Caractères spéciaux dans les noms de fichier
Le problème est des deux côtés :
- Mendeley exporte en format BibTeX qui ne gère pas l'Unicode (contrairement à BibLaTex) et donc échappe tous les caractères non ASCII 128 par des accolades bouclées ("curly braces" :
{}
)... y compris ceux des noms de fichier.
- Zotero convertit très bien ces codes... sauf ceux des noms de fichier.
En conséquence, Zotero ne trouve pas les fichiers joints et ne les importe pas.
Mendeley a une option censée empêcher ces échappements, mais chez moi elle ne fonctionnait que sur le premier article exporté, et je n'ai pas trouvé de décodeur en ligne. La solution a donc été de le faire a mano en décodant tous ces caractères échappés dans les noms de fichier : par prudence, je n'ai pas voulu modifier toutes les lignes, mais seulement celles commençant par file = {
.
Remarque : Zotero ne renomme pas les fichiers joints importés depuis un BibTeX, quelles que soient les options choisies dans les paramêtres.
4.4.3.1 Pour remplacer les caractères spéciaux dans les noms de fichier avec Visual Studio Code sur Mac
Cliquer pour afficher/cacher le tutoriel👇
- Afficher le fichier sans passage à la ligne via le raccourci clavier OPTIONZ
- Sélectionner à la souris
file = {
- Sélectionner toutes les occurrences par le raccourci clavier CMDCTRLG
- Etendre la sélection à toute la ligne pour chaque occurrence par le reccourci clavier CMDSHIFT▶ (flèche droite)
- Ouvrir la fenêtre de recherche par CMDF
- Dans cette fenêtre, à droite, cliquer sur l'icône montrant 3 lignes pour Rechercher dans la sélection
- Dans cette fenêtre, à gauche, cliquer sur l'icône montrant une flèche vers le bas pour ouvrir le formulaire de remplacement
- Rechercher
{\'
- Pour chaque résultat : copier tout le caractère (de
{\'
à }
) et faire un remplacement global par la lettre correspondante (ex : {{c}}
par č
)
- Recommencer au point 8 jusqu'à ce qu'il n'en reste aucun
Rem : le point 9. implique que vous aurez souvent à retourner dans Mendeley pour y copier le caractère ...

4.5 Import dans Zotero
4.5.1 Compte Zotero
Le transfert a été effectué avant d'ouvrir un compte sur le site Zotero, celui-ci n'est donc absolument pas nécessaire.
4.5.2 Better BibTeX
J'avais installé l'extension recommandée Better BibTeX, mais je ne sais pas si ça change quelque chose pour l'import (probablement oui, donc : recommandé).
4.5.3 Import
C'est très intuitif :
- Ouvrir la fenêtre modale d'import par SHIFTCMDI
- Cocher : Un fichier (BibTeX, RIS, Zotero RDF, etc.) (c'est l'option par défaut)
- Dans la fenêtre option :
- Décocher "Placer les collections et les documents importés dans une nouvelle collection"
- Choisir si Zotero copie (importe) ou pas les fichiers (dans mon cas : oui)
L'import en lui-même a pris 3h35 mn (10 fiches par seconde), l'ordinateur restant utilisable pendant ce temps (l'import na pas écroûlé le processeur ni n'a surchargé la mémoire alors que je n'ai que 8 Go et suis toujours limite).

5. Résultat
J'ai effectué l'opération deux fois : lors de la première je n'avais pas supprimé les keywords et me suis retrouvé avec des milliers de marqueurs, j'ai donc tout effacé, vidé la corbeille (ce qui a pris du temps...), et recommencé...
Toutes les fiches semblent avoir été importées, une seule a été rejetée (et taggée comme telle par Better BibTeX) parce qu'elle comportait un identifiant non valide (j'ai corrigé dans Visual Studio Code, fait un copier/coller, et l'ai réimportée par SHIFTCMDOPTIONI)
5.1 Problèmes constatés
Rien n'est parfait, mai au global le transfert s'est beaucoup mieux passé que je le prévoyais, il n'y a eu aucun problème bloquant :
Après le deuxième import, une trentaine de fiches d'auteurs divers ont été ajoutées à la collection spéciale "Mes publications", dont 11 apparaissant grisées ne pouvant en être retirées. Ce problème est connu sur le Forum Zotero, mais pour m'en sortir j'ai du :
- Les copier au format BibLaTex (ie : les backuper) : CMDA puis CLIC DROIT puis Better BibTeX → Copier BibLaTeX dans le presse-papiers
- Créer une nouvelle collection et y importer toutes ces fiches (via SHIFTCMDOPTIONI)
- Envoyer à la poubelle tout le contenu de Mes publications
BibTeX ne gérant pas les dates, toutes mes fiches apparaissent avoir été créées le jour de l'import
Les notes Zotero sont en markdown, mais il ne le reconnait pas lors de l'importation non plus que lors des copié/collés. Par exemple : ---
est affiché comme —
alors que si je retape ---
j'obtiens bien la barre de séparation voulue

5.2 Premières impressions
Mendeley m'apparaît meilleur pour :
- Modifier plusieurs fiches en même temps (ex : pour les tags voir la procédure ci-dessus : section 4.2.1.1)
- Importer des PDF : un simple drag & drop suffit pour créer une nouvelle fiche complétée avec fichier joint, alors que dans Zotero il faut le positionner entre les lignes et la fiche correspondante n'est pas générée
- Mettre à jour automatiquement des fiches existantes (comment fait-on dans Zotero ?)
Zotero m'apparaît meilleur pour :
- Importer des pages web : le plugin Zotero non seulement remplit la fiche à partir des métadonnées, mais en plus conserve un snapshot complet de la page (sous Mendeley j'étais obligé de passer par la génération d'un PDF), et ça fonctionne même pour un Tweet (le snapshot ne fonctionne cependant pas pour les pages trop lourdes)
- Filtrer par marqueurs : ne sont affichés que les marqueurs (tags) des fiches affichées, pas tous comme dans Mendeley, ce qui facilite grandement le multifacetting (filtrage cumulatif)
- Indiquer les articles rétractés avec explication pour chaque (et lien vers la note de rétractation et le site Retractation Watch), créer automatiquement une collection, et alerter à chaque nouvelle rétractation
- Le backup est une simple copie de répertoire ... et au pire la base est un fichier SQLite non encrypté

5.3 Une semaine après : Connexion à MS World et Zettlr et création d'un format de citation en CSL : Connexion à MS World et Zettlr et création d'un format de citation en CSL
Impression encore plus positive :
- Dans le browser, il suffit souvent d'un clic pour créer une nouvelle fiche détaillée dans Zotero avec son fichier PDF qui est automatiquement téléchargé et annexé
- Le filtrage des marqueurs (tags) en multifacetting est extrêmement pratique
- L'import et la gestion des citations dans Microsoft Word (via le plugin installé automatiquement : Aide Zotero) et Zettler (pour ce dernier il faut créer un fichier intermédiaire (automatiquement mis à jour) dans Zotero et le référencer dans Zettlr : Aide Zettlr) sont très intuitives
- La gestion des doublons est très facile
- J'ai pu très facilement créer un nouveau format de citation ajoutant les ISBN au format APA (jusqu'ici j'étais obligé de les rajouter manuellement).
Cliquer pour afficher/cacher le tutoriel
- Dupliquer le fichier
Zotero/styles/apa.csl
(ou celui que vous utilisez, mais le numéro de ligne ci-après correspond à celui-là)
- Insérer à la
ligne 1683
, soit entre les blocs DOI et URL, le code suivant :
<else-if variable="ISBN">
<text variable="ISBN" prefix="ISBN : "/>
</else-if>
- Dans les Paramêtres de Zotero :
- Onglet "Citer"" : cliquer sur le
+
en dessous à droite du tableau affichant la liste des styles disponibles et ajouter le nouveau fichier .csl
- Onglet "Exportation"" : le sélectionner dans le menu déroulant "Format pour les documents"
Remarque : ce code affiche le DOI s'il existe, sinon l'ISBN s'il existe, et en dernière option l'URL si elle existe. Ce fonctionnement est bien sûr modifiable
