Red Hat Bugzilla – Bug 8482
cookie left on screen when "ZZ" exiting "TERM=xterm vi"
Last modified: 2008-05-01 11:37:53 EDT
[ronald@yakisoba ronald]$ TERM=xterm vi
^ this is the undesirable cookie
[ronald@yakisoba ronald]$ TERM=vt100 vi
^ no cookie, as I would expect
This is probably a terminfo bug, but there is no "terminfo" component
This doesn't happen on RH6.0. Really annoying to look at. My productivity
has been lower since... ;)
Doesn't happen to me on a current 6.2 snapshot...
Which terminal are you using? xterm, konsole, gnome-terminal, rxvt, ..... ?
Only happens with /bin/vi, not vim.
This happens to me with /usr/bin/vim on three 6.1 systems:
VIM - Vi IMproved 5.4 (1999 Jul 25, compiled Jul 27 1999 18:08:35)
but not with gvim. Note that the annoying "c" character is put out upon entering
vim, not when exiting. I'm using gnome-terminal.
This happens to me since 6.1 and also in 6.2 using 'konsole'.
Not seen if I use kvt or xterm.
Fixed in rawhide vims? I heard that newest gnome-terminal doesn't exhibit this
problem. Is it a vim bug or gnome-terminal problem?
I don't know. *Something* was broken in 6.1 and 6.2. It seems fixed in 7.0. I
don't know about rawhide.
Rawhide vim rebuilt from SRPM on 6.2 works. No more bogus "c" on stdout.
Here is the problem as I see it. In term.c, vim uses
KS_CRV to request version, with escape sequence "\033[>c".
This is taken from xterm docs, but is wrong. Actual sequence
has no '>', to which both xterm and gnome-terminal reply.
However, if one would remove '>', he/she triggers another
bug in vim: version reply is not eaten properly and it gets
input as a vim command.
The best fix is to comment out the KS_CRV entry in term.c.
Did anyone communicate this to vim folks?