Path: usenet.cise.ufl.edu!usenet.ufl.edu!news.fsu.edu!gatech!cpk-news-hub1.bbnplanet.com!news.bbnplanet.com!news-peer.sprintlink.net!news-pull.sprintlink.net!news-in-east.sprintlink.net!news.sprintlink.net!Sprint!199.2.96.62!news.rain.net!news.teleport.com!not-for-mail
From: [email protected] (Greg Ward)
Newsgroups: comp.lang.perl.announce,comp.lang.perl.modules
Subject: ANNOUNCE: Text::BibTeX 0.2
Followup-To: comp.lang.perl.modules
Date: 20 Sep 1997 14:14:01 GMT
Organization: Brain Imaging Centre, Montreal Neurological Inst.
Lines: 46
Sender: [email protected]
Approved: [email protected] (comp.lang.perl.announce)
Message-ID: <[email protected]>
NNTP-Posting-Host: gadget.cscaper.com
X-Disclaimer: The "Approved" header verifies header information for article transmission and does not imply approval of content.
Xref: usenet.cise.ufl.edu comp.lang.perl.announce:25 comp.lang.perl.modules:886

                             Text::BibTeX
                             version 0.2
                  Greg Ward ([email protected])

Text::BibTeX is a Perl module (with a couple of helper modules) for
reading, parsing, and writing BibTeX files.  The distribution includes
the Text::BibTeX, Text::BibTeX::File, and Text::BibTeX::Entry modules;
most of the hard work is done by a C library called btparse (which must
be downloaded separately from the Text::BibTeX modules).

The C library, btparse, is also a fully functional (and partially
documented) interface to BibTeX files.  If you demand the utmost in
efficiency, or want to write an interface to BibTeX for some other
high-level language, btparse might be for you.

Features provided by the modules include:

  * robust, efficient lexical scanning and parsing of BibTeX files
  * excellent error detection, reporting, and recovery in the parser
  * full processing of BibTeX strings (macros expanded, whitespace
    collapsed, strings concatenated)
  * handles all common entry types (@comment, @preamble, @string,
    and "everything else) with ease, and gives you full access to
    the contents of all entry types
  * support for processing author names identically to BibTeX
  * preliminary support for imposing/enforcing a particular database
    structure

btparse provides all of the above features, plus it is much more
flexibile with regards to the amount of processing done to strings.  You
can turn off macro expansion, whitespace collapsing, and token pasting
at will.  (Eventually, these features will migrate to the Perl code.)

The home ftp site for Text::BibTeX and btparse is

  ftp://ftp.bic.mni.mcgill.ca/pub/users/greg/

and they're both available on CPAN in modules/by-authors/Greg_Ward.

--
Greg Ward - Research Assistant                     [email protected]
Brain Imaging Centre (WB201)           http://www.bic.mni.mcgill.ca/~greg
Montreal Neurological Institute           voice: (514) 398-4965 (or 1996)
Montreal, Quebec, Canada  H3A 2B4           fax: (514) 398-8948