Subject: Re: vi changed for the worse??? (or broken?)
To: Mason Loring Bliss <mason@acheron.middleboro.ma.us>
From: John Nemeth <jnemeth@cue.bc.ca>
List: current-users
Date: 03/19/1999 20:04:50
On Mar 19,  8:33am, Mason Loring Bliss wrote:
} On Thu, Mar 18, 1999 at 08:26:01PM -0800, Michael Richardson wrote:
} 
} >   ESC O A is an arrow key. Is it possible that your TERMCAP changed?
} 
} I suppose the question is whether or not the -current termcap changed within
} the last couple weeks, since I wasn't experiencing this behaviour with a
} build from the beginning of the month.

     Yep.

} On Fri, Mar 19, 1999 at 03:34:40AM -0800, John Nemeth wrote:
} 
} > The way vi distinguishes between these characters being cursor keys
} > and them being individual commands is by intercharacter timing (this
} > is a really terrible way to write a user interface).  Anyways, what
} > this means is that you have a termcap that specifies the usage of the
} > latter set of characters.
} 
} Eek. Um... So, vi looks to see if there are arrow key definitions in the
} termcap, and does this funky intercharacter timing check if it sees entries
} for arrow keys?

     Basically.  I'm not sure of the exact algorithm.  There's really
not much else it can do apart from remap/unbind the commands that
conflict with cursor keys.  This is one place where emacs wins:  there
is no possible way for one key to have multiple meanings.  When using
vi, I tend to just ignore the cursor keys and use 'jkhl'.

} The odd thing is that arrow keys worked fine in vi with the older termcap.
} It was able to interpret arrow keys *and* use the commands I've mentioned
} without delay.

     This means that either the termcap was changed to use the
opposite cursor keypad mode, or that vi's intercharacter timing code
was changed.

}-- End of excerpt from Mason Loring Bliss