Originally Lucid Emacs, created in 1991 when Lucid Inc. couldn't wait for the FSF to merge their GUI improvements into GNU Emacs 19. After Lucid's bankruptcy in 1994, the fork was renamed XEmacs and continued under community stewardship until development ceased around 2013.
XEmacs was a full fork of the GNU Emacs C core and Emacs Lisp runtime environment. It introduced an object-oriented widget toolkit abstraction, native support for multiple character sets (MULE), and an integrated package management system. Under the hood it shared the Emacs Lisp interpreter but diverged significantly in its C-level display engine and event handling.
In 1991, Lucid Inc. needed a powerful editor as the centerpiece of their C++ development environment called Energize. GNU Emacs 18 didn't have the GUI capabilities they needed — mouse support, multiple fonts, multiple window-system windows — and GNU Emacs 19 was still in early alpha. Rather than wait, Lucid hired Jamie Zawinski and a team of developers to fork the Emacs 19 alpha and build the features themselves, with the intention that their work would be merged back into GNU Emacs proper.
That merge never happened. Richard Stallman and the FSF found that the Lucid changes had diverged too far from their own vision for Emacs 19. Some code was adapted, some was rejected outright, and the two codebases drifted apart permanently. What had begun as a temporary expedient became one of the earliest and most acrimonious open-source forks. Zawinski later wrote a colorful and partisan account of the schism that remains one of the best primary sources on the subject.
When Lucid went bankrupt in 1994, the fork's future was uncertain. The trademark "Lucid" was legally ambiguous — nobody knew who would end up owning it — so companies like Sun Microsystems that wanted to continue shipping the editor pushed for a rename. "XEmacs" was chosen as a compromise. Development continued under community governance, with Ben Wing, Stephen Turnbull, and others maintaining the project through the late 1990s and 2000s.
The XEmacs vs. GNU Emacs rivalry defined a generation of editor wars, but by the mid-2000s, GNU Emacs had incorporated many of the GUI innovations that XEmacs had pioneered — multiple fonts, proper X11 support, GTK integration — while XEmacs struggled to attract new contributors. The last stable release was in 2009; the last beta was in 2013. The project is effectively dead, a historical artifact of what happens when a corporate fork loses its corporate sponsor.
The XEmacs saga taught the open-source world important lessons about the dangers of forking without a plan for long-term sustainability, and about how the upstream project can ultimately win by simply absorbing the fork's best ideas over time.
Lucid Inc. forks GNU Emacs 19 alpha to create Lucid Emacs for their Energize IDE
FSF releases GNU Emacs 19, having merged some but not all of Lucid's changes
Lucid Inc. goes bankrupt; fork renamed to XEmacs to avoid trademark issues
XEmacs 20.0 released with MULE (multilingual) support
Last stable release of XEmacs (21.4.22)
Last beta release of XEmacs (21.5.34); development effectively ceases
“The Lemacs/FSFmacs split is just one of many instances of the FSF's inability to play well with others.”
XEmacs was arguably the first major open-source fork and certainly one of the most influential. It pioneered GUI features in Emacs — proper font rendering, mouse handling, menubars, and toolbar support — that GNU Emacs eventually adopted. The XEmacs package system also predated ELPA and inspired aspects of Emacs's modern package management.
More broadly, the XEmacs schism became a cautionary tale studied by every subsequent open-source project contemplating a fork. It demonstrated both the power of forking (forcing innovation on a recalcitrant upstream) and its cost (decades of duplicated effort and community fragmentation).