[net.unix-wizards] Vi vs. Emacs -- the religious wars start again...

allbery@ncoast.UUCP (Brandon Allbery) (10/21/86)

Quoted from <847@cuuxb.UUCP> ["Re: VI(1) vs. the world"], by mwm@cuuxb.UUCP (Marc W. Mengel)...
+---------------
| In article <113@twg-ap.UUCP> narayan@twg-ap.UUCP (Narayan Mohanram) writes:
| >>     -	multiple buffers and windows
+---------------

These were actually in vi at one point.  Problem was, the author was on a
PDP-11 and he couldn't fit any other features in with windows.

+---------------
| >>     -	query replace
+---------------

:g/foo/s//bar/gc leaves a lot to be desired.  It's difficult to type, and you
can only replace or not replace.  (JOVE:  yes, no, stop, recursive edit, pro-
ceed.  Recursive edit drops you back into the editor; C-X C-C puts you back
into search mode.  VERY useful if you replace something you didn't mean to!)

+---------------
| >>     -	keyboard macros
+---------------

:map :map! :ab

However, ^V^V^V^[ is a bit disgusting.  On the other hand, while the Emacs
technique of "defining-by-doing" is easy to pick up, I am often forced to
start an emacs on a junk file, define a macro, save it, then use it later.

+---------------
| >>     -	online help (":!man vi" doesn't count)
+---------------

I understand GNU Emacs has this.  I've seen some others; few have on-line help
that can really be called "help" (either hard to get it on the screen or as
hard to understand as the UNIX Programmer's Manual).

+---------------
| And one volley for the other side: I really like to be able to say "15j" to
| go down 15 lines, and "40a -<ESC>" to be able to make an 80 column dashed line.
| Does Emacs, (or any other editor, for that matter) provide this repeat n times
| facility? (this is not a rhetorical question, I don't know...)
+---------------

That trick is impossible in modeless editors without a "temporary macro"
feature that can be repeated; TECO comes to mind...

+---------------
| P.S. A Challenge to those Other Editor users, I can write a vi macro to 
| 	reverse the words on a line... can you?
+---------------

A macro to do that would be ugly.  Or worse, impossible to understand because
of "little tricks".  In Emacs, you write a function to do that kind of thing.
On the other hand, Lisp never impressed me that much...

It should be obvious by now that I don't consider either editor to be THE
PERFECT EDITOR.  And there are times when modal editors are more useful and
times when modeless editors are more useful.

++Brandon
-- 
  ---------------- /--/	Brandon S. Allbery		UUCP: decvax!cwruecmp!
 /              / /|\/	Tridelta Industries, Inc.        ncoast!tdi2!brandon
----    -------- /-++	7350 Corporate Blvd.		PHONE: +1 216 974 9210
   /   / /---,  ----	Mentor, Ohio 44060		SYSOP: UNaXcess/ncoast
  /   / /    / /  /	     -- HOME --			 (216) 781-6201 24 hrs.
 /   / /    / /  /	6615 Center St. Apt. A1-105	ARPA:  ncoast!allbery%
----  -----~ ----	Mentor, Ohio 44060-4101		case.CSNET@relay.cs.net
An Open Letter To Tim Maroney:  If you don't want dogma, stop feeding it to us!

mob@mit-amt.MIT.EDU (Mario O. Bourgoin) (10/22/86)

In article <1586@ncoast.UUCP> allbery@ncoast.UUCP writes:
>| And one volley for the other side: I really like to be able to say
>| "15j" to go down 15 lines, and "40a -<ESC>" to be able to make an
>| 80 column dashed line.  Does Emacs, (or any other editor, for that
>| matter) provide this repeat n times facility? (this is not a
>| rhetorical question, I don't know...)
>
>That trick is impossible in modeless editors without a "temporary macro"
>feature that can be repeated; TECO comes to mind...

In GnuEmacs, it is a matter of saying ^u<number><action>. In JOVE, you
can say Escape<number><action>.

>+---------------
>| P.S. A Challenge to those Other Editor users, I can write a vi macro to 
>| 	reverse the words on a line... can you?
>+---------------
>
>A macro to do that would be ugly.  Or worse, impossible to understand because
>of "little tricks".  In Emacs, you write a function to do that kind of thing.

If I'm allowed to use numeric arguments to tell the macro how many
words there are, easily and clearly. Otherwise, it is simpler to use a
function.

I do agree that it serves little purpose to argue editors. Emacses
could include better functions to handle words and lines. I say,
whatever works for you. I just wanted to show that Emacs does work for
me.

--Mario O. Bourgoin