CentraleSupélecDépartement informatique
Plateau de Moulon
3 rue Joliot-Curie
F-91192 Gif-sur-Yvette cedex
BibTeX

Le cookbook bibtexref_fbo permet d'insérer facilement des références bibliographiques dans une page PmWiki à partir d'un fichier BibTeX.

Configuration

Les variables suivantes peuvent être définies dans le fichier config.php :

  • $BibtexBibDir répertoire où sont stockés les fichiers .bib (par défaut, c'est le répertoire des documents attachés)
  • $BibtexPdfUrl URL où se trouvent les fichiers PDF (par défaut, c'est le répertoire des documents attachés)
  • $BibtexPdfLink texte des liens vers les fichiers PDF (par défaut : '(PDF)')
  • $BibtexUrlLink texte des liens vers les fichiers URL des articles (par défaut : '(URL)')
  • $BibtexBibLink texte des liens vers les entrées BibTeX (par défaut : '(BIB)')
  • $BibtexGenerateDefaultUrlField à mettre à true pour générer automatiquement une URL pour les entrées qui n'en ont pas.
  • $BibtexLang['lang'] texte affiché pour les documents dont le champ BibTeX LANGUAGE est égal à lang. Cela peut être un petit drapeau correspondant à la langue.
  • $BibtexSilentFields est un tableau de champs BibTeX qui ne doivent pas être affichés. Vous pouvez par exemple y inclure les champs privés que vous utilisez pour classer vos documents.

Nouvelles actions

Cette recette ajoute une nouvelle action PmWiki : bibentry, qui est utilisée pour afficher une entrée BibTeX. Cette action prend deux arguments : le nom du fichier bibtex et la référence de l'entrée à afficher.

PmWiki tags

Pour utiliser des références bibliographiques, vous devez charger des fichiers BibTeX, soit en utilisant la fonctionnalité d'upload de PmWiki (Attach:<filename>), soit en les copiant directement dans le dossier upload/$Group, $Group étant le nom du groupe dans les pages duquel vous souhaitez utiliser les références. Les fichiers de bibliographie ne sont utilisables que dans le groupe pour lequel ils ont été chargés.

Il est aussi possible de coller le contenu d'un fichier BibTeX dans une page du Wiki et d'utiliser cette page comme un fichier BibTeX.

Les citations sont obtenues avec le markup {[...]} de la forme : {[bibfile.bib,reference]} pour une entrée BibTeX. Par exemple {[ExempleBibTeX, HarBou2007Models]} cite l'article HarBou2007Models de la bibliographie située dans la page Wiki ExempleBibTeX (accessible à partir du lien dans le menu sur le côté) comme ceci : (HarBou2007Models).

On peut obtenir un condensé de l'entrée avec bibtexsummary:[bibfile.bib,reference]. Par exemple bibtexsummary:[ExempleBibTeX, HarBou2007Models] donne (les exemples sont encadrés de pointillées verts) :

[1] HarBou2007ModelsCécile Hardebolle, Frédéric Boulanger, ModHel'X: A Component-Oriented Approach to Multi-Formalism ModelingModels in Software Engineering: Workshops and Symposia at MoDELS 2007, Nashville, TN, USA, September 30 - October 5, 2007, Reports and Revised Selected Papers, Nashville, TN, USA, 2008, (Holger Giese, Ed.), Springer-Verlag, pages 247-258(URL), (BibTeX)


L'entrée BibTeX complète est obtenue avec bibtexcomplete:[bibfile.bib,reference]. Par exemple :

ModHel'X: A Component-Oriented Approach to Multi-Formalism Modeling,
Summary

[2] HarBou2007ModelsCécile Hardebolle, Frédéric Boulanger, ModHel'X: A Component-Oriented Approach to Multi-Formalism ModelingModels in Software Engineering: Workshops and Symposia at MoDELS 2007, Nashville, TN, USA, September 30 - October 5, 2007, Reports and Revised Selected Papers, Nashville, TN, USA, 2008, (Holger Giese, Ed.), Springer-Verlag, pages 247-258(URL)

Abstract

BibTeX entry
@conference { HarBou2007Models,
author = { Cécile Hardebolle and Frédéric Boulanger },
editor = { Holger Giese },
title = { ModHel'X: A Component-Oriented Approach to Multi-Formalism Modeling },
booktitle = { Models in Software Engineering: Workshops and Symposia at MoDELS 2007, Nashville, TN, USA, September 30 - October 5, 2007, Reports and Revised Selected Papers },
series = { Lecture Notes in Computer Science },
volume = { 5002 },
date = { September 30 - October 5, 2007 },
address = { Nashville, TN, USA },
year = { 2008 },
isbn = { 978-3-540-69069-6 },
pages = { 247--258 },
publisher = { Springer-Verlag },
publisheraddress = { Berlin, Heidelberg },
class = { confedit },
}


Requêtes BibTeX

Il est possible de formuler des requêtes pour obtenir les entrées BibTeX qui correspondent à certains critères :

<select rule>, <sort rule> and <limit rule> sont des expressions PHP. <formatting function> est le nom d'un fonction PHP qui reçoit un objet BibtexEntry en argument et rend une chaîne de caractères décrivant l'entrée.

Par exemple :

affiche les 5 entrées les plus récentes dont le champs 'YEAR' est 2004, triées par année décroissante. C'est le caractère ! en début de <sort rule> qui indique que l'ordre est inversé. Pour accéder aux champs d'une entrée BibTeX, il suffit d'utiliser la syntaxe $this->get("<FIELDNAME>"). Le nom du champ doit être en capitales.

Ainsi, la requête bibtexquery:[ExempleBibTeX][$this->get('YEAR') == '2004'][!$this->get('PUBDATE')][4] donne pour résultat :

[3] MboBouFerIRI2004Mokhoo Aimé Mbobi, Frédéric Boulanger, Mohamed Feredj, Execution Model for Non-Hierarchical Heterogeneous ModelingProceedings of the 2004 IEEE International Conference on Information Reuse and Integration (IEEE IRI 2004), Las Vegas, Nevada, USA, November, 2004, IEEE Computer Society, pages 139-144(URL), (BibTeX)

[4] FerBouMboIRI2004Mohamed Feredj, Frédéric Boulanger, Mokhoo Aimé Mbobi, An Approach of Domain Polymorph Component DesignProceedings of the 2004 IEEE International Conference on Information Reuse and Integration (IEEE IRI 2004), Las Vegas, Nevada, USA, November, 2004, pages 145-150(URL), (BibTeX)

[5] BouMboFerIPSI2004Frédéric Boulanger, Mokhoo Aimé Mbobi, Mohamed Feredj, Flat Heterogeneous ModelingProceedings of the 2004 International Conference on Advances in the Internet, Processing, Systems, and Interdisciplinary Research (IPSI 2004), Venice, Italy, November, 20047 pages, on CD-ROM, (URL), (BibTeX)


Par défaut, les entrées sont formatées par la fonction PHP myBibFormat. Les arguments non utilisés peuvent être laissés blancs : affiche toutes les entrées de bibfile.bib, dans l'ordre et le format par défaut.