Tools to aid maintenance of GP-bibliography
W. Langdon . 18 April 2022
This directory contains (at your own risk):
- template.bib a BibTex template.
- Introduction to BibTex and advice on
maintaining BibTeX files.
- Tools for tidying up BibTeX files and converting them to simple
(NB with JabRef-1.7b.jar remember to save
after View Saved Citations
export as tab-deliminated).
Sourceforge also has
BibDesk (Mac OS X).
tools for converting BibTeX files to
- LaTeX and BibTeX
- A csh script to convert a BibTex file to
text. Uses bibclean and BibTeX and in the process may detect errors.
- awk script to remove comments
- see for tools available from other
The following have been noted in version 2.08 of
- This directory contains a bug fix
to bibclean which
ensures bibclean will not spread urls across multiple lines. Please
- The command line option -delete-empty-fields can cause badly formatted
output. These problems may be fixed up by hand. The csh script
bib2txt.bat may be used to check the format of a BibTeX file.
- When installing bibclean either don't use
BIBINPUTS or have its set appropriately before running the
- perl scripts to convert BibTeX files to refer format, from Peter Martin
Perl script to convert bibtex to refer (use fixbib.pl first)
Perl script to tidy up format of bibtex produced by bibclean for bibtex2refer.pl
Unix csh script to run fixbib.pl and bibtex2refer.pl (you may need to
adapt to your directory conventions)
Gawk script to replace long author and editor lists by first name
Obviously your bibtex system needs to support and others
and replace it by "et al." in your latex output.
Run bbl_others.awk in the directory holding your latex source file
(not the one holding gp-bibliography.bib,
which is normally placed in a directory for bibtex files,
gawk -f bbl_others.awk ~/bibtex/gp-bibliography.bib > gp-bibliography.bib
bibtex style file written by Riccardo Poli for
A Field Guide to Genetic Programming.
Gawk script for adding links into the GP bibliography
from your paper the papers it cites.
In addition to
you will need
which can be down loaded from the GP bibliography.
Suggest keeping it in the same directory as you keep your copy of
After you have created a bibtex .bbl output file,
run the gawk script gpbib_bbl.awk with gp-bibliography.txt
as its first input and the .bbl file as its second.
If all goes well gawk will update the .bbl file
with links into the GP-bibliography.
gawk -f gpbib_bbl.awk ~/bibtex/gp-bibliography.txt test.bbl
- Kapa like BibTeX style file,
adapted to replace both long lists of author and of editors
by first name et al.
This version used by authors of papers presented at
Genetic Programming Theory and Practice Workshops
emulates bibtool -x
That is, it uses a .aux file to decide which bibtex
entries to extract from the following bibtex .bib files.
If multiple entries have the same key, it extracts only the first.
As with bibtool,
when matching bibtex entries it case folds the bibtex keys.
However it does not reformat the entry or case fold the keys on output.
It was specifically written for overleaf,
whose bibtex is sensitive to lower case or capital letters in the
Use latex to create my_paper.aux from
my_paper.tex in the usual way, and then run bib_x.awk:
gawk -f bib_x.awk my_paper.aux gp-bibliography.bib other1.bib other2.bib > my_paper.bib
should now contain only the bibtex entries needed by my_paper.tex
and can be used as an ordinary bibtex file.
E.g. in my_paper.tex
Gawk script to extracting bibtex entries since a given year.
(Entries without a year, e.g. because not yet assigned an issue in a journal,
are treated as in the future and so always included with "first"
and never with "last".)
gawk -f select_year.awk -v "first=2022" gp-bibliography.bib > 2022.bib