Lightweight Emacs clone
|Interests||Lua, editors, testing, UNIX tools present and future, XML, structured editing|
GNU Zile (short for "Zile Implements Lua Editors") is a toolkit for building editors. (It used to be a lightweight Emacs subset.) Zile has all of Emacs's basic editing features: it is 8-bit clean (though it currently lacks Unicode support), and the number of editing buffers and windows is only limited by available memory and screen space respectively. Syntax coloring, registers, minibuffer completion and auto-fill are available. Function and variable names are identical with Emacs's.
Zile is currently being rewritten by Gary Vaughan, from its previous form (an Emacs clone) to its new form (an editor toolkit). It currently comes with two editors: Zmacs, which as the name suggests emulates Emacs, and Zi, which does not support any form of Lisp, and is Emacs-inspired rather than a strict clone.
There is also a fork, Zee (https://github.com/rrthomas/zee), which aims to be a minimal editor which integrates with the UNIX command shell (rather than subsuming it, as Emacs does). So far, only the surface has been scratched: the current incarnation of Zee is a minimal editor with a single file, single window interface, and a CUA (i.e. GNOME/Windows-like) command set. Zee should be rewritten as a Zile flavor. Other projects include turning it into a library (which can be used, for example, as a readline replacement), and working out how it should fit in with the UNIX tools philosophy. Other ideas that have so far only been sketched include extending it to work as a structured file editor (essentially, working on well-formed XML files).
There's also a fork of Zile that replaces its stub Lisp interpreter with Guile (https://github.com/spk121/zile).
If you're interested in portable software engineering and re-engineering, Emacs, or traditional UNIX tools and their future incarnations, you should find a project to interest you.
How to get started
Go to Zile's Savannah page, and check out current git. If you're interested in contributing, please do email Reuben Thomas!