All,
I’m proud to announce the release of Bible 1.0.1, a library for parsing
Bible references and retrieving the text from the web.
== What is it?
Mainly, an interactive application for retrieving and displaying books,
chapters, and verses. Once installed, type “bible” to start an
interactive
session. A wide variety of references are supported:
Gen 1 # first chapter of Genesis
Genesis 1 # Full names supported
1 Kgs 1 - 2 # 1st and 2nd chapter in 1 Kings
Luke 15:8-10 # Specific verses from chapters supported
Luke 15:1-7, 11-32 # Multiple, disjoint verse specification
Matt 9:12; Mark 2:17; Luke 5: 31 # Multiple books together
Gen 1, 3 # discontinuous chapters
Gen 1 - 2:3 # Span chapters, to a specific verse
Besides the abbreviations listed above, most common names for books can
be
used ( i.e. “1 Kings”, “Matthew”, etc.). Other common means of
separating
chapters and verses may also be used (e.g. “Lk 15.11-32”, “Genesis 1;
3”,
etc.). My motivation for writing this library was to be able copy verse
references off web pages and paste them into the console with little or
no
change, so the parser is pretty flexible.
Three translations are supported out of the box: Revised Standard
Version
(the default), New American Bible, and Douay-Rheims. To access these,
enter
:rsv, :nab, or :dr at the console.
The script can also be passed various arguments to look up a reference,
print it, and exit. Run “bible --help” to see these options.
== How do I get it?
The easiest way to get it is via a gem download:
gem install bible
The project is hosted on rubyforge at:
http://rubyforge.org/projects/bible/
== Other Notes
If you run this on Windows, and have the win32console gem installed,
output
will be nicely paged. Book titles, chapters, and verses will also be
bolded.
Essentially, the text is a lot easier to read with the gem installed.
Any
one who wishes to get it working on *nix systems is welcome to contact
me
with a patch or even suggestions.
== Limitations
The library includes a definition of the books in the bible, the
chapters in
each book, and the number of verses in each chapter. This allows
references
to be parsed accurately but it makes supporting multiple Bible “schemas”
difficult. It will accept all deutero-canonical books ( i.e. Catholic
Bibles) but it the verse references for older translations, like the
Douay-Rheims, might be off. I’d like it to support all versions
eventually (
e.g. Vulgate, Septuagint, NIV, etc, etc) but that’s not the case right
now.
== Anything else?
The interactive application is the main point of this gem, but it does
include a library that could conceivably be used in other applications.
Also, all text is scraped off various web sites so do be nice - no need
to
download the entire Bible daily or anything.
Bug reports, feedback, and suggestions are welcome. God Bless
Justin