Stratego/XT BibTeX Tools

Stratego -- Strategies for Program Transformation


The bibtex-tools package provides components for processing BibTeX files, mainly for producing publication lists in PDF and HTML automatically from a bibtex file. The creation of publication pages is driven by templates for selecting bibtex entries from the file and for dividing the entries into sections. The package comes with standard templates for publication lists by-year, by-type, by-year-and-type, alphabetically, etc. The program creates individual bibtex files for each publication and refers to that from the html such that other people can easily cite your paper. The program creates links for fields in the bib entry which have a name starting with 'url'.


The program uses the proper bibtex tool for formatting of bibtex entries, since this is superior to and more complete than any handcrafted attempt at formatting bibliographies. It also allows use of different formatting styles.

For example, from an entry such as:

  author =       {Arie van Deursen and Eelco Visser},
  title =        {The Reengineering Wiki},
  booktitle =    {Proceedings 6th European Conference on Software Maintenance and Reengineering (CSMR)},
  year =         2002,
  pages =        "217--220",
  publisher =    {IEEE Computer Society},
  url =          {},
  urlinfo =      {},
  urlpdf =       {},
  pubcat =       {conference}

the following entry is created:

  • A. van Deursen and E. Visser. The Reengineering Wiki. In Proceedings 6th European Conference on Software Maintenance and Reengineering (CSMR), pages 217--220. IEEE Computer Society, 2002. (info, pdf, bib).

Where the title is a link to the first url field, and the (info, pdf, bib) are links to the info url, the pdf url, and the bibtex entry for the publication, respectively.

Other Examples

For examples of the output generated see my publication list.


See the manual for extensive tool documentation.


Invoke the program as follows:

bib-to-html -i file.bib --all-templates

This will produce various presentations of the publications in file.bib; by-year, by-type, by-year and type, etc. The presentations are in HTML and PDF. The HTML version points to the PDF file and each publication points to a page with its bib entry.

There are many other options and it is possible to specify your own selection queries and presentation templates.


Reduce a bibtex file to the entries cited in an aux file. Useful for specializing a large bibtex file for a publication.


Latest stable release:

The latest build of bibtex-tools is available from

and includes a manual with documentation of all the components in the package and an explanation of the LaTeX? techniques used.

Related Tools


The bibtex-tools package is created by Eelco Visser. The package makes heavy use of exising bibtex and latex software, i.e. latex, bibtex, and hevea for conversion from latex to html.

Thanks to Peter Mosses and Merijn de Jonge for bug reports and feature requests.

License and Disclaimer

  Copyright (C) 2000-2005 Eelco Visser

  This library is free software; you can redistribute it and/or
  modify it under the terms of the GNU Lesser General Public
  License as published by the Free Software Foundation; either
  version 2 of the License, or (at your option) any later version.

  This library is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  Lesser General Public License for more details.

  You should have received a copy of the GNU Lesser General Public
  License along with this library; if not, write to the Free Software
  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA