Elvis is an enhanced clone of the
vi text editor, first released in January 1990. It introduced several new features, including syntax highlighting and built-in support for viewing
nroff
nroff (short for "new roff") is a text-formatting program on Unix and Unix-like operating systems. It produces output suitable for simple fixed-width printers and terminal windows. It is an integral part of the Unix help system, being used t ...
and
HTML
The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScri ...
documents. Elvis is written by Steve Kirkendall and is distributed under the
Clarified Artistic License (ClArtistic) which is used by
Perl
Perl is a family of two High-level programming language, high-level, General-purpose programming language, general-purpose, Interpreter (computing), interpreted, dynamic programming languages. "Perl" refers to Perl 5, but from 2000 to 2019 it ...
and is a GPL-compatible free software license.
Elvis is the version of vi that comes with
Slackware
Slackware is a Linux distribution created by Patrick Volkerding in 1993. Originally based on Softlanding Linux System, Slackware has been the basis for many other Linux distributions, most notably the first versions of SUSE Linux distributio ...
,
Frugalware
Frugalware Linux has been a general-purpose Linux distribution designed for intermediate users who are familiar with command-line operations. Early versions were based on Slackware, but it later became an independently developed distribution. Frug ...
, and
KateOS
KateOS was a Linux distribution originally based on Slackware. It was designed for intermediate users. Its package management system used so called TGZex (.tgz) packages, which unlike Slackware packages support dependency tracking (optional), int ...
.
Comments
Elvis was the pioneering vi clone, widely admired in the 1990s for its conciseness, and many features. It influenced the development of
Vim
Vim means enthusiasm and vigor. It may also refer to:
* Vim (cleaning product)
* Vim Comedy Company, a movie studio
* Vim Records
* Vimentin, a protein
* "Vim", a song by Machine Head on the album ''Through the Ashes of Empires''
* Vim (text ed ...
until about 1997.
It was the first to provide color
syntax highlighting
Syntax highlighting is a feature of text editors that are used for programming, scripting, or markup languages, such as HTML. The feature displays text, especially source code, in different colours and fonts according to the category of terms. ...
(and to generalize syntax highlighting to multiple file types),
first to provide highlighted selections via keyboard.
Elvis's built-in nroff (early) and (later) HTML displays gave it unusual WYSIWYG features.
Elvis recognizes binary files, as well and provides a split screen for editing them.
jelvis
Elvis is an enhanced clone of the vi text editor, first released in January 1990. It introduced several new features, including syntax highlighting and built-in support for viewing nroff and HTML documents. Elvis is written by Steve Kirkendall an ...
, a Japanese variant, is available, based on work by Jun-ichiro itojun Hagino up until 1998.
His more recent work in this area has been distributed as
patches against
nvi NVI or nvi may refer to:
* nvi, a text editor
* Avial NV, an airline
* ''no value indicator'', a non-denominated postage stamp
* Navoiy Airport, in Uzbekistan
* Negative volume index, a financial analysis method
* ''Nationale Vliegtuig Industr ...
. A Korean variant
helvis is also available, originally by Park Chong-Dae.
These variants were modifications of ''elvis'' 1.8 (July 10, 1994).
The
nvi NVI or nvi may refer to:
* nvi, a text editor
* Avial NV, an airline
* ''no value indicator'', a non-denominated postage stamp
* Navoiy Airport, in Uzbekistan
* Negative volume index, a financial analysis method
* ''Nationale Vliegtuig Industr ...
editor is based on an older version of ''elvis'' 1.5 (April 2, 1992).
History
Elvis is an enhanced clone of vi. To understand the full context in which Elvis was created, readers should consider the
history
History (derived ) is the systematic study and the documentation of the human activity. The time period of event before the History of writing#Inventions of writing, invention of writing systems is considered prehistory. "History" is an umbr ...
of
vi. In this section we examine the version history of Elvis almost exclusively.
Steve Kirkendall posted the first version of Elvis to the
Usenet
Usenet () is a worldwide distributed discussion system available on computers. It was developed from the general-purpose Unix-to-Unix Copy (UUCP) dial-up network architecture. Tom Truscott and Jim Ellis conceived the idea in 1979, and it was ...
newsgroup comp.os.minix in early January, 1990, intending it to be a more complete and faithful clone of
Vi than Tim Thompson's
Stevie Stevie may refer to:
People with the name Given name
*Stevie (given name), a list of people
People with the nickname or alias
* Stevie B, American singer, songwriter and record producer Steven Bernard Hill (born 1958)
*Stevie J, stage name of Amer ...
(ST editor for VI enthusiasts), released three years previously.
Kirkendall outlined several ways in which Elvis was different from Stevie, namely:
* The text is stored in a temporary file, just like the real vi, and unlike stevie. Because of this, you can edit files that are larger than a single process' data space. Also, you can recover your file after a crash or power failure.
* Arrow keys work in input mode. In fact, if you invoke the editor via the name "input", then it will start editing in input mode. You can make your changes, and then exit by hitting Control-Z twice, and NEVER go into visual command mode. In other words, elvis can act pretty much like a normal editor -- something that the real vi certainly can't do.
* Long lines are displayed differently. Where vi and stevie wrap the line onto several rows of the screen, elvis displays it on one row and allows you to scroll sideways.
In addition, in Elvis almost all ex/vi commands worked (except :@, :abbr, and :preserve in ex mode and @ in visual mode and appending to named buffers).
[ (discusses January comp.os.minix posting, and design goals)]
It quickly attracted considerable interest in a number of enthusiast communities.
Andrew Tanenbaum
Andrew Stuart Tanenbaum (born March 16, 1944), sometimes referred to by the handle ast, is an American-Dutch computer scientist and professor emeritus of computer science at the Vrije Universiteit Amsterdam in the Netherlands.
He is the author ...
quickly asked the community to decide one of these two editors to be the vi clone in
Minix;
Elvis was chosen, and remains the vi clone for Minix today.
In 1989, Lynne Jolitz and William Jolitz began porting BSD Unix to run on 386 class processors, but to create a free distribution they needed to avoid any AT&T-contaminated code, including Joy's vi. To fill the void left by removing vi, their 1992
386BSD
386BSD (also known as "Jolix") is a discontinued Unix operating system based on the Berkeley Software Distribution (BSD). It was released in 1992 and ran on PC-compatible computer systems based on the 32-bit Intel 80386 microprocessor. 386BSD i ...
distribution adopted Elvis as its vi replacement. But at UC Berkeley, Keith Bostic wanted a “bug for bug compatible” replacement for Joy's vi for BSD 4.4 Lite. Using Kirkendall's Elvis (version 1.8) as a starting point, Bostic created
nvi NVI or nvi may refer to:
* nvi, a text editor
* Avial NV, an airline
* ''no value indicator'', a non-denominated postage stamp
* Navoiy Airport, in Uzbekistan
* Negative volume index, a financial analysis method
* ''Nationale Vliegtuig Industr ...
, releasing it in Spring of 1994.
In August 1994, Kirkendall announced that he was working on a major rewrite of Elvis, and in October 1996, it was ready for release. The new version had a number of new features, including
* Multiple edit buffers, so you can edit several files at the same time.
* Multiple windows, so those edit buffers can share screen space.
* Multiple display modes, including...
** "normal" which looks like the traditional vi screen
** "hex" which is good for viewing binary files
** "syntax" which supports syntax coloring (configurable)
** "man" which formats Unix man-pages like nroff
** "html" which formats Web pages
* Online hypertextual help
* A variety of user interfaces, including...
** "termcap" which uses text screens like the traditional vi
** "x11" which provides a GUI interface for Unix/X Window users
** Compiling: elvis can parse error messages, and move to source of error
* WYSIWYG printing, with drivers for most printer types
* Built-in calculator with a C-like syntax
* Extreme customizability
* "Open" mode, for one-line-at-a-time editing even on very dumb terminals
In December 1998, Kirkendall released Elvis 2.1, with added features, including name completion, via the
key, network protocols (allowing can reading/writing via Web URLs), and a "tex" display mode.
Kirkendall maintained the 2.1 release with bugfixes and minor enhancements as 2.1_1, 2.1_2, 2.1_3, and culminating in 2.1_4, released in October 1999.
In October 2003, four years after the previous release, Kirkendall released Elvis 2.2, which added a number of new features, including a built-in context-sensitive spell checker, text folding
Code or text folding, or less commonly holophrasting, is a feature of some graphical user interfaces that allows the user to selectively hide ("fold") or display ("unfold") parts of a document. This allows the user to manage large amounts of text ...
, region highlighting, and user-definable URL protocols. In addition, it adopted a number of ideas from Vim
Vim means enthusiasm and vigor. It may also refer to:
* Vim (cleaning product)
* Vim Comedy Company, a movie studio
* Vim Records
* Vimentin, a protein
* "Vim", a song by Machine Head on the album ''Through the Ashes of Empires''
* Vim (text ed ...
.
As of May 2020, there has been no official new release of Elvis since 2.2.
Notes
References
External links
Elvis' homepage
*
*
{{DEFAULTSORT:Elvis (Text Editor)
Free text editors
MINIX
Software using the Artistic license
Termcap
Unix text editors
Vi
Windows text editors