[texhax] Re: BibTeX and its limitations

Tom Schneider toms at ncifcrf.gov
Tue Nov 18 13:49:27 CET 2003


> the user will write in his latex file \citeoption{abnt-dont-use-etal=yes} and 
> the bst file will process the field abnt-etal-list=0 and modify it's behavior 
> accordingly. We noticed that this is a very effective way to introduce 
> options to a bst style because many options can be grouped into a single 
> bibtex entry.

I had something similar with the Journal of Molecular Biology which
had a style the same as Journal of Theoretical Biology - except that
JMB had no titles.  Or was it the other way around?  No matter - one
changed to require titles, thank goodness, and so it no longer matters
...  To implement this I had a special citation:

@article{TitlesOn,
author = "TitlesOn",
title = "TitlesOn",
journal = "TitlesOn",
volume = "TitlesOn",
comment = "If this is nocited, then titles will be turned on in JMB style",
year = "1900"}

(There's the answer, in my own documentation! ;-)

I would just include \nocite{TitlesOn} and a function in the jmb.bst
would switch the titles on by flipping a variable ... That would give
me jtb type citations.

One could imagine implementing a whole series of such switches, which
would give one control over the bibliography from inside a document.

I also wrote a generic style generator,  control.bst

http://www.lecb.ncifcrf.gov/~toms/latex.html
ftp://ftp.ncifcrf.gov/pub/delila/control.bst

which is a simple output of each database entry and so one can
rearrange it pretty quickly to create a new style.  The makebst
program
http://www.linmpi.mpg.de/english/services/software/latex/localtex/loc-alltx.html#makebst
is probably more powerful though.

I agree that writing in the bst language is difficult.  It is easy to
get quite lost because it is low level.  The annoying thing is that
this also gives one super powers over the output.  Anything higher
level would limit that power.  Having separable libraries of functions
that one could combine would be great.  Perhaps the thing to do is to
write a higher level language that compiles into bst - like MakeBst
but a full language, not a human interface.

Tom

  Dr. Thomas D. Schneider
  National Cancer Institute
  Laboratory of Experimental and Computational Biology
  Frederick, Maryland  21702-1201
  toms at ncifcrf.gov
  permanent email: toms at alum.mit.edu (use only if first address fails)
  http://www.lecb.ncifcrf.gov/~toms/

1. DO NOT SEND ME LARGE FILES WITHOUT MY REQUESTING THEM.
   Please send me a url instead.

2.
  "Anyone who slaps a 'this page is best viewed with Browser X' label
  on a Web page appears to be yearning for the bad old days, before
  the Web, when you had very little chance of reading a document
  written on another computer, another word processor, or another
  network."

-Tim Berners-Lee in Technology Review, July 1996 

http://www.anybrowser.org/campaign/

3. Please make life easier for your corrspondents and follow:
The FAQ of proper quoting
http://www.uwasa.fi/~ts/http/quote.html


More information about the texhax mailing list