From: Christopher Chan-Nui (channui@austin.ibm.com)
Date: 04/13/93


From: channui@austin.ibm.com (Christopher Chan-Nui)
Subject: Re: Long lines in vi (elvis)
Date: Wed, 14 Apr 1993 00:45:24 GMT

Charles Hannum (mycroft@hal.gnu.ai.mit.edu) wrote:

: In article <dmw.734672572@teal> dmw@teal.csn.org (Dave Warner) writes:
: >
: > (Put another way, the things that you tend to type over and over
: > probably work -- things done less frequently, like configuring a
: > .exrc file, are quite different.)

: The thing which severely annoys me about all vi clones is that `8dd4..'
: doesn't do the same thing as in the original.

: I have yet to see a clone which does it right.

: For the uninitiated, in vi:

: 8 - goes into the global argument register
: dd - deletes (8) lines
: 4 - replaces the global argument register
: . - repeats the `dd'; deletes 4 lines because the register changed
: . - repeats the `dd', again deleting 4 lines

: One clone repeats the whole `8dd', deleting 32 lines for the first `.';
: one ignores the `4'; one gets the `4' but forgets it later; etc.

Take a look at VIM. I've got it compiled on an RS/6000 and on my Linux box.
Version 1.24 has a couple bugs which you HAVE to fix to make it useful. But I
am told that 1.25 has been sent to the comp.source.misc moderator and these
bugs are fixed in that version. But it handles '8dd4..' perfectly :) If your
anxious to get it to try it out before it appears on csm I can tell you what I
changed in order to get the search/replace and ignorecase stuff to work with
1.24. It appeared on alt.sources (articles 7084-7099 at wuarchive.wustl.edu
/usenet/alt.sources/articles).

I must say that this is the best VI clone that I've ever seen. It has 1 or 2
annoying things (doing a !! just puts you on the : line with x,x! as the
command :( But overall it is faithful to the editing features, and improves
(optionally) the features that I really wanted improved. But the most
important thing is COMMAND LINE RETRIEVAL AND EDITING! :) I use it as the
default vi for my RS/6000, Linux and MessyDOS. Check it out.