Elvis - UNIX editor vi/ex clone now available for AmigaDOS.
This version is 1.5, a replacement to 1.4 which did not
Elvis was written by Steve Kirkendall.
Elvis was ported to AmigaDOS by Mike Rieser.
From the introduction to Elvis by Steve Kirkendall:
Elvis is a clone of vi/ex, the standard UNIX
editor. Elvis supports nearly all of the vi/ex
commands, in both visual mode and colon mode.
Like vi/ex, Elvis stores most of the text in a
temporary file, instead of RAM. This allows it to
edit files that are too large to fit in a single
process' data space. Also, the edit buffer can
survive a power failure or crash.
Elvis runs under BSD UNIX, AT&T SysV UNIX, Minix,
MS-DOS, Atari TOS, Coherent, OS9/68000, VMS and
AmigaDos. The next version is also expected to add
MS-Windows, OS/2 and MacOS. Contact me before you
start porting it to some other OS, because somebody
else may have already done it for you.
Elvis is freely redistributable, in either source
form or executable form. There are no restrictions on
how you may use it.
Under both 1.3 and 2.0 versions of AmigaDOS the following
features are supported:
Elvis is clean of Enforcer hits.
Elvis supports Global environment variables.
Elvis allows you edit files nearly 2 MB in size, using only
about 115 KB of memory.
Elvis works as a line editor and can read script files when
Elvis supports most vi .exrc definitions, put them in
elvis.rc in either s: or your $HOME directory
Elvis READONLY works for -r--d files, and when Elvis is
Elvis uses an internal TERMCAP entry by default.
Elvis supports user defined $TERM and $TERMCAP environment
Elvis supports window resizing.
Elvis works over an AUX: port, and has an internal vt100-80
TERMCAP for this purpose.
Elvis supports Function keys and Arrow keys.
Elvis supports shifted Arrow Keys, and shifted Function
Elvis can be told where to put its temp files via $TMP or
$TEMP environment variables.
Elvis makes writes of no larger than 256 bytes to the
console.device to prevent problems accompanying large
Elvis also turns off the cursor to speed output.
Under AmigaDOS 2.04 the following features are supported:
Elvis can use any user defined shell. (csh, ksh, conman, etc)
Elvis can be run, and opens its own window.
(eg. Run Elvis S:Startup-Sequence)
Elvis supports filters via PIPE:. Elvis multitasks and
runs programs Asynch.
Elvis supports Local environment variables.
Elvis supports tag lookup using an external tag program
Elvis command line supports AmigaDOS regular expression and
`*' wildcards via calls to MatchFirst, MatchNext, MatchEnd.
Elvis preserves file protection bits (eg: s-rw--).
Elvis will support 101 key keyboards.
Elvis requires more than the standard 4000 byte stack.
A stack of 10,000 bytes should be adequate.
Elvis requires 115 KB of memory to run. If its
told to keep its temp files in RAM, it will of course
Elvis is currently available for anonymous FTP from
Please copy it else where, since ab20 is going away.
Elvis was placed in the /incoming/amiga directory.
It will most likely find its way to:
AmiElvis-1.5.lha contains both source and binaries.
The archive creates the following directory structure:
Elvis-1.5/elvisman.txt - ascii format version of docs
Elvis-1.5/src/ - complete source to Elvis 1.5
Elvis-1.5/doc/ - troff source requiring ms and an
Elvis-1.5/bin/ - executables made with Aztec C 5.2b
Elvis is freely redistributable, in either source form or
executable form. There are no restrictions on how you may
The programs are not pure, but can be Rez'ed.
The Elvis binary was configured to use only about 20 KB of
memory for editing files, the rest is written to disk. If you
want to increase this, you may have to use large data model.