BibTeX is a program to create citations and bibliographies with LaTeX. It collects references out of a LaTeX document and synchronises them with data given in a separate file (file type
.bib). The appearance of the citations and the bibliography are controlled by a
bst file (bst means
bibliography style). These files are stored in a rather complicated programming language which is not further specified. This language works as a stack machine with few commands. This means that customizations are a hard task. But fortunately there are several bibliography styles around complying to different guidelines. A selection of these can be inspected on the webpage BibTeX style examples.
A short introduction to using BibTeX by Jürgen Fenn is available from the
PracTeX Journal, 2006, no. 4:
For the humanities, the package biblatex is very useful. It is far more flexible than jurabib, which was the first choice over a couple of years. Jurabib's settings are quite flexible and I used it for some years; but you cannot manage everything without a knowledge in BibTeX programming. That's why I switched to biblatex.
The future BibTeX 1.0 is expected to have a lot more features than the current BibTeX 0.99—there is an interesting article by the BibTeX developer Oren Patashnik in TUGBoat 24/1, 2003: BibTeX yesterday, today, tomorrow (PDF, 6 pages).