Ebenezer's software suite for TEI

Windows 95/NT software for creating, editing, checking, and doing other interesting things with files marked up according to the principles of the Text Encoding Initiative.

All for one low price ($0) which can fit the budget of over 70% of humanities projects in North America today.

  1. Why?
  2. What's in it?
  3. How do I get it?
  4. How do I set it up?
  5. How do I use it?


Why?

Scholars who want to use software tools to create and handle TEI-conformant text files have usually had to choose between expensive commercial products or free programs which required a lot of effort and computer sophistication to use. Many who are commited to the abstract ideals of the Text Encoding Initiative never create or use TEI-conformant texts because they can afford neither the money to buy the commercial software nor the time to learn the arcana of the free software.

Fortunately the fobidding reputation of the free software is largely undeserved. I put together this page because of my conviction that you should be able to -- and can -- use these tools even if your PhD isn't in software engineering but in something more environmentally friendly, like mediaeval literature or phonological theory, and also my conviction that the excellent results of a lot of hard work by dedicated individuals should be more widely known and used.

The suite is a collection of the free software tools that I have found the most useful in my own work, configured so that they'll work "out of the box" and cooperate with each other and with the TEI definition files. Anyone with a basic knowledge of Windows computing and the TEI should be able to install the suite and begin using it with a minimum of trouble. Ideally the suite will allow the work that scholars do more accurately reflect our priorities, letting us spend more time on texts and less on encoding.



What's in it

What you'll have if you set it all up:
  1. Emacs
  2. PSGML
  3. The SP parser
  4. Jade
  5. DTDs, etc.

Emacs (specifically NTEmacs 19.34 for Windows 95/NT)

A full-featured text editor that you can configure to your own tastes and extend to do things the designers never dreamed of.

Rabid Emacs supporters tend to believe that your text editor should do everything in the world. Failing that, you should be able to create add-ons that will let your text editor do everything in the world. Included in that emacs\lisp subdirectory you don't want to go into are the add-ons that will let you use Emacs to read your e-mail, download files from Singapore, solve differential equations, find out what today is according to the Mayan calendar, and pretend to psychoanalyze youself. To my knowledge, no-one has written an add-on that will fill out your tax return and electronically file it for you, but it's only a matter of time.

The Emacs monster was originally spawned by Richard Stallman and untold millions of hackers. The Windows 95/NT version is the child of Geoff Voelker. The version you have was tweaked by Michael Duggan to let it do those fancy pop-up menus and compiled with even more improvements by Andrew Innes, so you don't have to buy a Microsoft C++ compiler.

Lennart Staflin's PSGML

This is an Emacs add-on that lets it handle SGML files intelligently. OK, in terms of personal convenience it's not quite up there with doing your taxes for you while you sleep, but it's close. Since Hypertext Markup Language (HTML) is, like TEI, just another SGML DTD, you're also getting an HTML editor at no extra cost.

James Clark's SP system

Emacs with PSGML is pretty good at telling you where your TEI document fails to live up to the rules, but for the ultimate feedback you need an official SGML parser. James Clark's SP package includes the world's SGML parser of choice, which you can run from inside Emacs, plus a number of other useful programs for manipulating SGML files that you can play around with when you work up the courage.

James Clark's Jade system

TEI tagging is supposed to be logical, not visual -- you say that something's emphatic without getting bogged down in petty details of whether it should be printed in italics or bold. But eventually you'll probably want to print your text without all those angle brackets.

DSSSL (Document Style Semantics Specification Language) is another international standard for creating style-sheets that tell you what an SGML-tagged text ought to look like when it's printed. The Jade program can take an SGML document and a DSSSL stylesheet and spit out a nicely formatted version suitable for printing. The kinds of output that are possible for now are:

Richard Light wrote the DSSSL style sheet for TEI. David Megginson and Mathias Clasen did a bunch of other work on it that is beyond my understanding.

the TEI DTD menagerie and other support files

including TEI Lite, all the character entity files, writing system declarations, and the catalogue files that the above programs need to find their way through them. As an added bonus, you get the DTDs for HTML. If I've done my job right, you won't even have to know that any of these are here. Also included are HTML copies of the tutorials below.


How do I get it?

You will need to download the following files:
  1. Emacs: prerel-19.34.3-bin.tar.gz (6 meg)
  2. Jade: jade.tar.gz (1 meg)
  3. The rest: teistuff.tar.gz (577 k)
  4. The set-up batch file: teisetup.bat
    (This one is ASCII text.)
  5. De-archiving software: gunzip.exe (71 k) and tar.exe (185 k)



Glitches so far:

Some people have had problems with their browser changing filenames that have more than one period. If yours does this too, make sure you change the names back again after saving them. (The teisetup batch file will warn you if it can't find one of the files and will remind you what it expects the names to be.)

teisetup.bat is a plain ASCII text file. For the moment, it's in Unix's idea of what a plain ASCII text file should look like rather than DOS's idea, causing the usual carriage-return headaches for some people. Make sure you download it as a text file. For example, in Netscape, don't just hold the shift key down while clicking on the link, rather select the link normally and when you can see the file in your browser, explicitly save it.


Note: The Emacs archive file is a pre-release version of the next mini-release of NTEmacs, made available thanks to Andrew Innes. When version 19.34.3 becomes officially available in a couple of weeks, the link above will point to the main University of Washington server. The Jade link will probably also soon point to James Clark's site.

You should also go look at the official web-pages for:

If you're the kind of masochist who like to compile all your programs yourself, the source code for the Emacs binaries above is here and the diff file here.



How do I set it up

Unfortunately, the current set-up is very insistent about living in the directory C:\TEI. You probably don't want to try to move it.

Create the directory TEI at the top level of your c: drive. Put all the downloaded files from above in this directory. Open a DOS box. Type:

     c:
     cd \TEI
     teisetup
You're done. (I hope.)

Disclaimers: I've never seen an NT system in my life. This has only been tested for Windows 95. Specifically, the only computer it's guaranteed to work on is mine (a Pentium 120 with 16 meg RAM). If people find problems setting up on other systems, especially if they've found solutions that can be incorporated into the general release, please let me know.

And of course all the disclaimers you expect. I don't guarantee it will work as promised or, for that matter, at all. If your hard drive dies screeching in agony, it's not my fault. If your computer goes up in smoke, the University of Manitoba will deny it's ever met me before in its life. Most of the parts of the suite are covered by some version of Gnu licence. It's not their fault either. It's not the fault of the authors of the software. It's not the fault of the Text Encoding Initiative, or of their sponsors, collaborators, in-laws, remote cousins, distant acquaintances, or household pets. It's not the fault of the Social Sciences and Humanities Research Council of Canada or of the Research Development Fund of the University of Manitoba, whose support of the research which required me to learn all this in the first place is gratefully acknowledged, though of course any opinions expressed in the results of that research or in the contents of these pages do not reflect those of SSHRCC, the U of M, or the researcher.



How do I use it?

Here are the beginnings of a tutorial on using Emacs in PSGML for TEI.
  1. Tutorial, part 1
  2. Tutorial, part 2
  3. Tutorial, part 3
These aren't universally useful for learning to use PSGML. Many of the suggestions in the tutorials will work only using the TEI-specific setup that comes with Ebenezer's suite.



Comments, suggestions, and further contributions are extremely welcome. You can mail me at krussll@cc.umanitoba.ca.



Created: June 27, 1997.
Last modified: July 3, 1997.