[conspire] (forw) Re: [discuss] Re: Unix Command Line HOWTO

Rick Moen rick at linuxmafia.com
Fri Dec 9 19:36:18 PST 2011

Of possible interest.

By the way, CABAL tomorrow!

----- Forwarded message from Rick Moen <rick at linuxmafia.com> -----

Date: Fri, 9 Dec 2011 19:32:47 -0800
From: Rick Moen <rick at linuxmafia.com>
To: Howard Gibson <hgibson at eol.ca>
Cc: jdd <jdd at dodin.org>, "discuss at en.tldp.org" <discuss at en.tldp.org>
Subject: Re: [discuss] Re: Unix Command Line HOWTO
Organization: If you lived here, you'd be $HOME already.

Hi, Howard.  Thank you very much for writing Unix Command Line HOWTO.

Quoting Howard Gibson (hgibson at eol.ca):
> On Fri, 09 Dec 2011 10:59:56 +0100 jdd <jdd at dodin.org> wrote:
> > there is no "original vi". Simply any "vi" command is a link to some 
> > vi variation, often vim (as said in the document). Some versions are 
> > specially ugly :-)
> Didn't Bill Joy write this thing originally?  What did he call it?   I
> seem to recall that elvis uses the mouse such that the X11 copy and
> paste does not work.  Maybe mentioning vim and elvis is more detail
> than a new user needs.  

Disclaimer:  These comments (that follow) are somewhat off the top of my
head, so please don't expect an ultra-accurate historical treatise.

Yes indeed, Bill Joy was the guy who wrote primordial vi.  I actually
used the damned thing, on VAXen in Evans Hall, UC Berkeley, while using
the timeshare accounts there.  Damn, that was a horrible editor.  I
second your initial revulsion -- making it all the more ironic that I
practically live in vim, these days.

Bill wrote it in the 1970s as a set of visual (full-screen) extensions
for the 'ex' line-mode editor utility, and it was then merged into BSD
distributions that followed.  Eventually, instead of being just a
secondary mode of ex, vi was changed to be a hardlink to the ex
executable, so that it would start up in visual mode.

You may recall that the bad years of the AT&T v. UC Regents lawsuit came
soon afterwards.  Rightly or wrongly, there was a perception that 'ex' 
was encumbered by AT&T copyright, so that discouraged wide distribution
of vi other than by AT&T licensees.  So, that was what inspired
third-party reimplementations of the _notion_ of vi from scratch,
starting with Steve Kirkendall's 'elvis'.[1]

Because 'elvis' was _almost_ compatible with all of primordial vi's
quirks, the people at UC Berkeley's Computer Science Research Group
(producers of BSD) wanted an _absolutely_ compatible rewrite, so
renaissance man Keith Bostic found time in his busy schedule to write
one, 'nvi' (new vi), which to this day is the bog-standard vi
implementation on BSDs, and also on some Linux distros.

_Most_ Linux distros favour the much more featureful, but not slavishly
compatible clone 'vim' by Bram Moolenar ('vi improved').  Vim can be
caused to be almost completely bug-for-bug compatible with nvi (and thus
with Joy's primordial vi), but even that compatibility mode has, IIRC,
some differences.  (Compatibility mode will, if you're a vim user,
remind you of all the things you hated about other vi implementations,
e.g., no visual indicator of command vs. overwrite/insert modes, and
only a single level of undo.)

Meanwhile, Joy's vi was mostly forgotten (because of successful
replacements) but staged a slight comeback in 2002, when Caldera Systems 
re-released AT&T 32V Unix and Unix V. 7 under a permissive licence --
which meant that Joy's original codebase was finally unambiguously open
source.  Gunnar Ritter had by that point already resumed semi-legal
redistribution of an updated version of Joy's code, but Caldera's
licensing announcement removed all legal impediments to it.  That
version is now available as 'Traditional Vi', aka 'ex-vi':  

All of this is _way_ more detail than any new Unix user could possibly
want to have -- but I thought you might be interested.

[1] What I loved about the elvis editor was that, if you logged out 
with a file open in its buffer, next time you logged in, you received
e-mail from elvis.  Proof that The King is still alive!

Rick Moen                       Every time you make a typo, the errorists win.
rick at linuxmafia.com
McQ!  (4x80)


----- End forwarded message -----

More information about the conspire mailing list