Elvis Beta Version 2.0j

by Larry Ayers <layers@vax2.rain.gen.mo.us>
Copyright (c) 1996

Published in Issue of the Linux Gazette


<Steve Kirkendall> has been working on and improving the vi-editor clone Elvis for several years now. Many of you will be familiar with the most recent non-beta version as it is linked to vi and ex in the default Slackware setup.

Elvis was one of the first vi-like editors to offer support for multiple windows and buffers, allowing transfer of cut or copied text from one file-buffer to another. These days this feature is taken for granted, but the original vi required cut-buffers to be saved to a file in order to transfer text from one file to another, an awkward procedure at best.

New Features

X-window support can be compiled into this beta. When the editor starts up it is able to determine whether it is being invoked from an x-window session or from a console. The appropriate interface then starts. The x-window interface is able to make use of different fonts and colors for italic and emphasized text; this is put to good use in the new HTML mode.

HTML-mode in a vi editor? I realize this sounds odd, but it works well. All of the Elvis documentation is now in HTML format, which is well-suited for help text. The HTML mode is not a complete implementation; external links (such as a link to an internet site) cannot be followed, and image links can be seen but are not loaded. Nonetheless the mode makes Elvis useful as a quick-loading html-file previewer. Sometimes it's nice to be able to just quickly scan an html file without the distracting presence of the formatting codes, and without starting up a browser. Links within a document, and links to another html file in the same directory are supported.

As is to be expected in a modern vi-style editor multiple windows and buffers are supported. Running in an x-windows session Elvis will start up another entire frame when a new file is loaded.

The mouse support for marking, cutting, and pasting is nicely- implemented.


The source code compiled uneventfully for me; as usual it's wise to check over the makefiles in order to make sure that the paths are correct. The resulting executable is named "e2", which helps keep it separate from an existing copy of Elvis you might have. The accompanying readme file warns of possible bugs, going so far as to state "This beta will crash", but I've used the current version and the one previous to it for some time now with no problems.


The only source I know of for the beta version of Elvis is this ftp site. The filename (which may be incremented by one or letters by the time you read this) is elvis20j.tgz. If you are a vi user, I encourage you to give it a try; I'm sure Steve Kirkendall would appreciate any user feedback.

Back up to the Linux Gazette!