vi vs. emacs

Jack Kramer - OSU Gene Res kramerj at beasley.CS.ORST.EDU
Sat Jul 30 11:40:40 AEST 1988


>	Control-F for Forward  one character	Control-K for Kill line
>	Control-B for Backward one character	Control-D for Delete forward
>	Control-N for Next     line		Control-E for End of line
>	Control-P for Previous line		Control-Q for Quote a char
>	Control-S for Search			Control-O for Open new line
>	Control-R for Reverse Search		Control-T for Transpose chars
>	

How about all the other nice mnemonics like

	Meta-V and CNTRL-X = and CNTRL-X CNTRL-X and ...

Maybe all the Meta's and CNTRL-X's are mnemonic to someone,  but from
what planet?

>	You really ought to give Emacs a chance, it's quite good and you
>	might like it.
>

I, and from the context of many of the messages, many others
probably use both editors depending on the circumstances.  I use Vi for 
quick text editing and Emacs when more power is needed but a real
word processor isn't available or needed. (I used vi here.) Since I
use UNIX when I have a choice, I can always count on vi being there.  
Those trapped into proprietary hardware/software combinations are not
so fortunate, and emacs gets points there.  The adamant preferences
expressed here probably have a lot more to do with the past and extant
environments one works in than any rational philosophical commitment.

>	      
>	But don't pick on Control-H = Help too much until you can come up
>	with a good story for why:
>
>		ZZ (Capital-Z Capital-Z) is a good mnemonic for: 
>		*Write (save) and quit file*.
>
>		:-)	
>

I think this misses a very major point of the difference between vi and
emacs besides the edit/command mode philosophy.  Emacs attempts to
allocate keystrokes mnemonically, does so for a few of the commands, but
then since there are so many bells and whistles,  most of the commands
are not mnemonic but very cryptic.  What is mnemonic about the Meta's, 
etc?  Vi commands on the other hand are positional rather than mnemonic.
If you try to make sense out of the letters on the keycaps there just
isn't any - there's not supposed to be.  After using vi for a short
while I find this to be much faster since the controls become second
nature much like touch typing.  I don't have to look at the keyboard to
execute the commands - and the positional order IS logical and convenient.
The "ZZ" is a good example - I don't think of the Z's - it's just the 
convenient three finger combination at hte lower left corner to get out.
If you want the mnemonic then use ":wq" for "write the file and quit".
Emacs tends to try to tie my fingers in knots much of the time when I 
try to type fast.

I have tried mapping (binding) the keystrokes of each to get the features
of the other that I like.  this CAN be done with either emacs of vi.
But then I use many different systems and it just adds to the confusion.

Perhaps some of the energy being used to argue the virtues of vi vs.
emacs could be directed to design a new compromise - maybe something
like a good set of mappings (bindings) which eventually permeates
enough systems so they solve the commonality problem.
 
 Even better, I really want to TALK to my computers.  If we could only get
 all the energy directed there .....


Jack Kramer
Computational Molecular Biology Laboratory
Center for Gene Research and Biotechnology
Oregon State University



More information about the Comp.unix.questions mailing list