Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!cs.utexas.edu!usc!bbn!bbn.com!cosell From: cosell@bbn.com (Bernie Cosell) Newsgroups: comp.editors Subject: Re^2: vi (vs VMS/EDT) Keywords: DEC bashing Message-ID: <48360@bbn.COM> Date: 16 Nov 89 21:59:49 GMT References: <1989Nov14.223604.17418@cs.eur.nl> <1989Nov15.202718.12762@ux1.cso.uiuc.edu> <5593@ethz-inf.UUCP> Sender: news@bbn.COM Lines: 41 wyle@inf.ethz.ch (Mitchell Wyle) writes: >In article <1989Nov15.202718.12762@ux1.cso.uiuc.edu> >mcdonald@aries.scs.uiuc.edu (Doug McDonald) is really asking for a flame, >when he writes: >>>the basic principle of input/command/line mode, it's not so bad at >>>all. >>> >>in something (after hitting "i" of course) then step mout for a Coke. >>Come back: your cursor is in the middle of the page. Are you in >>insert mode or not? Start typing - DAMMIT - oops, I forgot that >>I really DID hit escape before going for that Coke. Utter mess >>ensues. >... During the second week (around hour 25) of using >vi, most users, when in question about which mode they are in, hit the ESC >key to get into command mode, even when they are already in it. This action >is almost subconscious. In command mode vi might beep (depending on >settings). From insert mode, you'll go back into command mode whence you >may, if so desired, go back into insert mode. Another approach, which is far too underused by most folk, is to make liberal use of "map!"s to rationalize the while-in-input-mode environment. What I've done is put all of my "normal editing" commands in reasonable places in input mode. So I can use the arrow keys to move around, ctrl-E to move to the end of the line, word forward and word backward, etc. Basically, the only time I really have to leave input mode is when I'm really DONE with some input... as I make a cognitive shift to being working on another thing [e.g., editing the NEXT compiler error or fixing the NEXT broken paragraph], going into command mode, getting myself set up in the right place, and then diving into input mode not to emerge until I'm locally-done is just not a big deal. In many ways, it beats out the EMACS model of the world hands down. If I happen to hit the key-sequence that says "run the compiler" or "run this paragraph through troff" while I'm trying to type in input, it is *probably* a mistake; I rather like having my world somewhat heuristically tuned so that thte things that make sense for what I'm doing are ready at hand, and i have to do something to "enable" a richer repertoire when I decide I need to. /Bernie\