Utiliser la Console Javascript de Zotero

pour modifier en lot les références sélectionnées

 

 

#Zotero   #JavaScript   #BatchEdit

Dans le client Zotero de bureau (Zotero Standalone), activée par défaut depuis la version 5.0.73 (2019-08-05), une console Javascript permet d'exécuter des scripts sur nos références locales (sans passer par l'API web).

  • Pour ouvrir cette console :
  • Menu 'Outils' > 'Développeur' > Run Javascript

 

 

La documentation officielle est ici​ 

  • J'ai écrit une boucle sur les références sélectionnées dans Zotero
  • Mon but était de remplir le champ 'Langue' de 300+ références avec la valeur 'en'

le script

var selectedItems = ZoteroPane.getSelectedItems();
for (var i = 0; i < selectedItems.length; i++) {
  var item = selectedItems[i];
  item.setField('language', 'en');
  await item.saveTx();
}

En pratique

  • Sélectionner les références dans l'interface graphique de Zotero,
  • Ouvrir la console Javascript (Outils > Développeur > Run Javascript)
  • Coller le script
  • Cocher Run as async function
  • Exécuter (bouton Run ou ctrl+r)
  • Je m'en suis aussi servi pour vider le champs 'Extra' en modifiant la 4e ligne :
  • item.setField('extra', '');
  • Une liste de champs ici

  • ça peut être sympa avec des conditions :
    • proposez un code qui vide le champ 'url' si le champ 'doi' est rempli