Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
Message from discussion A new clone of vi is coming soon: ELVIS

Path: gmdzi!unido!mcsun!uunet!zephyr.ens.tek.com!tektronix!percy!parsely!psueea!eecs.cs.pdx.edu!kirkenda
From: kirke...@eecs.cs.pdx.edu (Steve Kirkendall)
Newsgroups: comp.editors
Subject: A new clone of vi is coming soon: ELVIS
Keywords: vi ex elvis
Message-ID: <2719@psueea.UUCP>
Date: 20 Apr 90 20:37:32 GMT
Sender: n...@psueea.UUCP
Reply-To: kirke...@eecs.cs.pdx.edu (Steve Kirkendall)
Organization: Portland State University, Portland, OR
Lines: 64
Posted: Fri Apr 20 21:37:32 1990

I've been working on a new clone of vi.  Somebody suggested that the folks on
this newsgroup might be interested, so...

The clone is called "elvis", some of its major features are:

	* 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.

	* A fairly complete "ex" mode is supported.  Elvis can execute most
	  ex scripts.  The :@, :abbr, and :preserve commands are missing,
	  and :recover has been replaced by a separate program.  Every other
	  command is present, though, including :map and :change.

	* All visual-mode commands work, except @ and *appending* to named
	  buffers.  List support is missing.  There are a few extensions:
	  shift-K looks up the word that the cursor is on & displays some
	  information about it (currently it tries to find a function header,
	  given the function name) and ## increments a number.

	* 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 input mode, you can backspace past the beginning of a line.

	* Elvis can (optionally) interpret the \fB, \fI, and \fU sequences
	  to display bold/italic/underlined characters on the screen.

	* Elvis refreshes the screen very quickly.

	* Elvis allows wildcards in filenames.  For example, you can say
	  ":n *.c" to edit all of the C source files in the directory.
	  The real vi does this, too, but stevie doesn't.

	* For regular expressions, elvis uses a syntax that is very similar to
	  the real vi's.  It is more compatible than stevie.

	* It has a 40-page manual.

The first version of elvis was posted to comp.os.minix in late January.
A set of patches/extensions were posted there about three weeks later,
in mid-February.  Since then, elvis has been improved/debugged.  More
importantly, it has been ported to MS-DOS.  When it works under Atari TOS,
I will post it to comp.sources.SOMETHING.  Hopefully, this will be in a
week or so.

My motivations for writing elvis were:
	1) I wanted a clone of vi that would run under Minix.
	2) I wanted the source to a version of vi, so that I could change
	   a few things.
	3) I wanted an editor that didn't store the edited file in *volatile*
	   memory.
-------------------------------------------------------------------------------
Steve Kirkendall,   kirke...@cs.pdx.edu,   uunet!tektronix!psueea!eecs!kirkenda
                      My favorite word is "flabbergast"