CURSUS and EMACS
Much of the development work on the CURSUS project has been done with the EMACS programmers' editor. EMACS, a long-standing UNIX tool EMACS, also ported to several other platforms, offers the possibility of a high level of customised extension. Running in psgml mode it is widely used for editing SGML and XML files. A version of EMACS specially prepared for working with TEI-encoded XML is among the tools available from the TEI website.
The CURSUS project has developed a set of project-specific tools, written in elisp, for use with the EMACS editor running in psgml mode. These include an extensive set of short-cuts for inserting templates of frequently-used component elements, routines to automate the insertion of cross-references between the project files, and various specific validity-checking devices beyond the generalised ones included with psgml.
The file of CURSUS elisp, together with a manual (in PDF format) is available for downloading as a zipped directory from the project download site. Directions for installation are included in the manual.
EMACS in nxml mode
The utility of EMACS for XML editing has recently (October 2003) been greatly increased by the release of James Clark's nxml mode, which enables the XML files to be written against schemas rather than DTDs. The CURSUS tools have been written for EMACS running in psgml mode, and will (for the most part) not as yet work with Clark's nxml mode. We plan in due course to rewrite the elisp to enable cooperation with nxml mode.