Short: Editor similar to UNIX vi Architecture: m68k-amigaos TITLE Elvis - UNIX editor vi/ex clone now available for AmigaDOS. VERSION This version is 1.5, a replacement to 1.4 which did not support AmigaDOS. AUTHOR Elvis was written by Steve Kirkendall. Elvis was ported to AmigaDOS by Mike Rieser. DESCRIPTION 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. FEATURES 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 named ex. 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 named view. Elvis uses an internal TERMCAP entry by default. Elvis supports user defined $TERM and $TERMCAP environment variables. 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 keys. 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 writes. 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 called ref. 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. SPECIAL REQUIREMENTS 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 require more. HOST NAME Elvis is currently available for anonymous FTP from ab20.larc.nasa.gov (128.155.23.64). Please copy it else where, since ab20 is going away. DIRECTORY Elvis was placed in the /incoming/amiga directory. It will most likely find its way to: /amiga/utilities/editors. FILE NAMES AmiElvis-1.5.lha contains both source and binaries. The archive creates the following directory structure: Elvis-1.5/ 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 DISTRIBUTABILITY Elvis is freely redistributable, in either source form or executable form. There are no restrictions on how you may use it. OTHER 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.