Welcome to the New & Improved Cramster… Click here to see what changed!

Definition Preview:

DEFINITIONASK ON Q&A BOARDCOMMENTS

XEmacs

XEmacs

XEmacs
Developer: XEmacs community
Latest release: 21.4.20 / December 10, 2006
OS: Cross-platform
Use: Text editor
License: GNU General Public License
Website: XEmacs Website

XEmacs is a fork of the GNU Emacs text editor. It runs on almost any Unix-like operating system -- inside X or in a text terminal -- as well as on Microsoft Windows and Mac OS X. XEmacs is free software and available under the GNU General Public License.

Contents

History

In the late 1980s, there had not been a new version of GNU Emacs since 1987, and there were significant delays in the release of the next version that would occur in 1993. Richard P. Gabriel's Lucid Inc. needed to ship Emacs to support their Energize C++ IDE. So Lucid recruited a team to improve and extend the code, with the intention that their new version, released in 1991, would form the basis of GNU Emacs version 19. However, they did not have time to submit their changes to the Free Software Foundation. Lucid continued developing and maintaining their version of Emacs, while the FSF released version 19 of Emacs a year later, rejecting most of the new features.

When Lucid went out of business in 1994, the code was picked up by other developers. Companies such as Sun Microsystems wanted to carry on shipping Lucid Emacs; however, using the trademark was legally ambiguous because no one knew who would eventually control the trademark 'Lucid', therefore the "X" in XEmacs is compromise among the parties developing XEmacs..

XEmacs has always supported text terminals and windowing systems other than X11. XEmacs and GNU Emacs can be compiled with and without X support. For a period of time XEmacs even had some terminal features, such as coloring, that GNU Emacs lacked.

GNU Emacs, XEmacs and a number of other similar editors are generally referred to collectively or individually as emacsen and emacs, since they are all inspired by the original TECO Emacs.

Features

XEmacs text editing features provide commands to manipulate words and paragraphs (deleting them, moving them, moving through them, and so forth), syntax highlighting for making source code easier to read, and "keyboard macros" for performing arbitrary batches of editing commands defined by the user.

XEmacs has comprehensive inline help, as well as five manuals available from the XEmacs website. XEmacs supports many human languages as well editing modes for many programming and markup languages. XEmacs is available for many operating systems including Unix/Linux, BSDs and Mac OS X. Running on Mac OS requires X11; while a native Carbon version is under development. There are two Windows versions, a native installer and a Cygwin package.

Almost all of the functionality in the editor can be reconfigured using Emacs Lisp, a simple and easy to learn language. Changes to the Lisp code do not require the editor to be restarted or recompiled. There are many pre-written Lisp extensions available.

Development

From the beginning, XEmacs aimed to have a frequent release cycle, currently 2-3 releases per year, and it also aimed to be more open to experimentation, and is often the first Emacs to offer new features, such as inline images, variable fonts and terminal coloring. Over the years, the code has been extensively rewritten to improve consistency and follow modern programming conventions stressing data abstraction. XEmacs has a unique packaging system for independently maintained Lisp packages. The latest version has GTK+ support and a native Carbon port for Mac OS X .

XEmacs has always had a very open development environment, including anonymous CVS access and publicly accessible development mailing lists and XEmacs comes with a 140-page internals manual (Wing and Buchholz, 1997).

XEmacs' project policy is to maintain compatibility with the GNU Emacs API. For example, it provides a compatibility layer implementing overlays via the native extent functionality. "the XEmacs developers strive to keep their code compatible with GNU Emacs, especially on the Lisp level."

One problem with XEmacs has been Unicode support. As of 2005, the released version depends on the unmaintained package called Mule-UCS to support Unicode, while the development branch of XEmacs has had robust native support for external Unicode encodings since May 2002, but the internal Mule character sets are incomplete, and development seems stalled as of September 2005 .

XEmacs development is split between three branches: stable, gamma, and beta, with beta being the first to get new features, but being the least tested, stable and secure. Version 20.0 was released on 9 February 1997, and 21.0 on 12 July 1998. As of December 2006, the current stable version is 21.4.20 and the latest release in the beta branch is 21.5.27. There are currently no gamma releases. Beginning with the release of XEmacs 21.4.0, XEmacs version numbers follow a scheme similar to that of Linux, with an odd second number signalling a development version, and an even second number for stable releases.

XEmacs and GNU Emacs

Several of XEmacs's principal developers have published accounts of the split between XEmacs and GNU Emacs, for example, Stephen Turnbull's summary of the arguments from both sides. One of the main disagreements has been the different view of copyright assignment. The FSF asserts that copyright assignment to the FSF is necessary to allow it to defend the code against GPL violations , while the XEmacs developers have argued that the lack of copyright assignment has allowed major companies to get involved, as sometimes companies can licence their code but due to a cautious attitude concerning fiduciary duties to shareholders, companies may have trouble in getting permission to assign away code completely. The copyright of much of the XEmacs code is held by the Free Software Foundation because of prior copyright assignment during merge attempts and cross development. Whether a piece of new XEmacs code enters GNU Emacs often depends on the willingness of that individual contributor to assign the code to the FSF.

New features in either editor usually show up in the other sooner or later. Furthermore, many developers contribute to both projects; in particular, many major Lisp subsystems, such as Gnus and Dired, are developed to work with both.

See also

 Copyrights:
wiki Wikipedia information about XEmacs This article is licensed under the GNU Free Documentation License. It uses material from the Wikipedia article "XEmacs". More from Wikipedia
 
Omar, graduate, kneeling and flexing in celebration. GPA: 5.0
Omarina, graduate, leaping in celebration
Omarsca, graduate, in dynamic pose
Omarian, graduate, in dynamic pose

Join Cramster’s Community

Cramster is the leading provider of online homework help for college and high school students. Get homework help and answers to your toughest questions in math, algebra, physics, chemistry, calculus, science, engineering, accounting, English, writing help, business, humanities and more. Master your homework assignments with our step-by-step solutions to more than 300 textbooks. If we don’t support your textbook, don’t worry! You can ask ANY homework question and get expert homework help in as little as two hours.

Our extensive online study community is made up of college and high school students, teachers, professors, parents and subject enthusiasts who contribute to our vast collection of study resources: textbook solutions, study guides, practice tests, practice problems, lecture notes, equation sheets and more. With Cramster’s help, your homework will never be the same!

» Join for Free Today