[gnu.emacs] Database for Emacs

drich@dialogic.uucp (Dan Rich) (02/13/90)

  I have recently discovered a need for a simple database, and it
seems to me that GNU Emacs is the perfect enviorment for one.  Has
anyone else written a database that runs under Emacs?  I am
considering doing this myself, but don't want to put in the time if
someone has already done it.

--
Dan Rich                    | ARPA: drich@dialogic.com
UNIX Systems Administrator  | UUCP: uunet!dialogic!drich
Dialogic Corporation        | - Time is an illusion.  Lunchtime, doubly so. -
(201) 334-1268 x213         |                           Douglas Adams

metz@iam.unibe.ch (Igor Metz) (02/13/90)

In article <1070@dialogic.UUCP> drich@dialogic.uucp (Dan Rich) writes:
>  I have recently discovered a need for a simple database, and it
>seems to me that GNU Emacs is the perfect enviorment for one.  Has
>anyone else written a database that runs under Emacs?  I am
>considering doing this myself, but don't want to put in the time if
>someone has already done it.

 I have implemented a bibliography "database" in elisp. It's menu driven and
uses forms for data entry and query. Since we do not have any database system
on our machine, I had to make this cheap, quick and dirty elisp hack.
 The data is held in a text file which uses delimiters (^L) to separate fields
and newlines to separate records (BNF grammar included below). When I wrote
the program, I didn't think about reusing the code for anything else, so it
might not be very useful for others (expect as an example, maybe not even for
that...).
 I can send the code to any interested party. But Achtung, das Zeug ist mit
deutschen Kommentaren versehen (comments are in german...). 


  <datei> ::= <record-begrenzer> {<record> <record-begrenzer>}.
  <record-begrenzer> ::= NL.
  <record> ::= <autor-feld>
               <titel-feld>
               <jahr-feld>
               [<zeitschrift-feld>]
               [<band-feld>]
               [<seiten-feld>]
               [<proceedings-feld>]
               [<institution-feld>]
               [<nummer-feld>]
               [<keyword-feld>]
               <vorhanden-feld>.
  <autor-feld>       ::= "%A " <text><feld-begrenzer>.
  <titel-feld>       ::= "%T " <text><feld-begrenzer>.
  <jahr-feld>        ::= "%J " <zahl><feld-begrenzer>.
  <zeitschrift-feld> ::= "%Z " <text><feld-begrenzer>.
  <band-feld>        ::= "%B " <text>.<feld-begrenzer>
  <seiten-feld>      ::= "%S " <text><feld-begrenzer>.
  <proceedings-feld> ::= "%P " <text><feld-begrenzer>.
  <institution-feld> ::= "%I " <text><feld-begrenzer>.
  <nummer-feld>      ::= "%N " <text><feld-begrenzer>.
  <keyword-feld>     ::= "%K " <wort} [{"," <wort>}]<feld-begrenzer>.
  <vorhanden-feld>   ::= "%V " ("y"|"Y"|"n"|"N")<feld-begrenzer>.
  <feld-begrenzer> ::= FF.

Igor Metz                    X400: metz@iamsm.iam.unibe.ch
Institut fuer Informatik     ARPA: metz%iamsm.iam.unibe.ch@relay.cs.net
und angewandte Mathematik    UUCP: ..!uunet!mcsun!iamsm.iam.unibe.ch!metz
Universitaet Bern            Phone: (0041) 31 65 49 90
Switzerland		     Fax:   (0041) 31 65 39 65
-- 
Igor Metz                    X400: metz@iamsm.iam.unibe.ch
Institut fuer Informatik     ARPA: metz%iamsm.iam.unibe.ch@relay.cs.net
und angewandte Mathematik    UUCP: ..!uunet!mcsun!iamsm.iam.unibe.ch!metz
Universitaet Bern            Phone: (0041) 31 65 49 90

nelson@mentor.cc.purdue.edu (J. Nelson Howell) (02/14/90)

I don't have one for gnu, but I have written one in MicroEMACS that you 
may be able to translate.  I did it more as an exercise than anything else,
but it has proved quite useful.  (Shook out a lot of bugs for DL too!)
Let me know if you would like to see it and I'll send it.

J. Nelson Howell			nelson@midas.mgmt.purdue.edu
System Programmer			NELSON@PURCCVM.BITNET
Krannert Graduate School of Management
Purdue University