Debian Bug report logs -
#92215
ncurses-base: same value for kll and kend in terminfo db for 'screen' causes problems!
Reported by: oskar@osk.mine.nu
Date: Fri, 30 Mar 2001 16:48:13 UTC
Severity: normal
Merged with 91275
Found in version 5.2.20010318-1
Fixed in version 5.2.20020112a-1
Done: Daniel Baumann <daniel@debian.org>
Bug is archived. No further changes may be made.
Toggle useless messages
Report forwarded to debian-bugs-dist@lists.debian.org, Daniel Jacobowitz <ncurses-maint@debian.org>:
Bug#92215; Package ncurses-base.
(full text, mbox, link).
Acknowledgement sent to Oskar Liljeblad <osk@hem.passagen.se>:
New Bug report received and forwarded. Copy sent to Daniel Jacobowitz <ncurses-maint@debian.org>.
(full text, mbox, link).
Message #5 received at submit@bugs.debian.org (full text, mbox, reply):
Package: ncurses-base
Version: 5.2.20010318-1
Severity: normal
This problem shows when you try hit the END key in MC in a
screen session... The END key doesn't work as it should.
The problem is that kll is defined to be the same value as
kend, and (apparently) ncurses checks kll before kend...
Here's a patch.
--- screen.ti Fri Mar 30 17:50:59 2001
+++ screen.ti.fix Fri Mar 30 18:44:46 2001
@@ -15,7 +15,7 @@
kf3=\EOR, kf4=\EOS, kf5=\E[15~, kf6=\E[17~,
kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[1~,
kend=\E[4~,
- kich1=\E[2~, kll=\E[4~, knp=\E[6~, kpp=\E[5~, nel=\EE,
+ kich1=\E[2~, knp=\E[6~, kpp=\E[5~, nel=\EE,
rc=\E8, rev=\E[7m, ri=\EM, rmir=\E[4l, rmkx=\E[?1l\E>,
rmso=\E[23m, rmul=\E[24m, rs2=\Ec, sc=\E7, sgr0=\E[m,
smir=\E[4h, smkx=\E[?1h\E=, smso=\E[3m, smul=\E[4m,
@@ -40,7 +40,7 @@
kf3=\EOR, kf4=\EOS, kf5=\E[15~, kf6=\E[17~,
kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[1~,
kend=\E[4~,
- kich1=\E[2~, kll=\E[4~, knp=\E[6~, kpp=\E[5~, nel=\EE,
+ kich1=\E[2~, knp=\E[6~, kpp=\E[5~, nel=\EE,
rc=\E8, rev=\E[7m, ri=\EM, rmir=\E[4l, rmkx=\E[?1l\E>,
rmso=\E[23m, rmul=\E[24m, rs2=\Ec, sc=\E7, sgr0=\E[m,
smir=\E[4h, smkx=\E[?1h\E=, smso=\E[3m, smul=\E[4m,
Information forwarded to debian-bugs-dist@lists.debian.org, Daniel Jacobowitz <ncurses-maint@debian.org>:
Bug#92215; Package ncurses-base.
(full text, mbox, link).
Acknowledgement sent to dickey@herndon4.his.com:
Extra info received and forwarded to list. Copy sent to Daniel Jacobowitz <ncurses-maint@debian.org>.
(full text, mbox, link).
Message #10 received at submit@bugs.debian.org (full text, mbox, reply):
On Fri, 30 Mar 2001, Oskar Liljeblad wrote:
this is really an issue for 'screen' (there is no point in ncurses having
an incompatible terminfo for 'screen' to workaround problems in
applications that use 'screen').
> Package: ncurses-base
> Version: 5.2.20010318-1
> Severity: normal
>
> This problem shows when you try hit the END key in MC in a
> screen session... The END key doesn't work as it should.
> The problem is that kll is defined to be the same value as
> kend, and (apparently) ncurses checks kll before kend...
>
> Here's a patch.
>
> --- screen.ti Fri Mar 30 17:50:59 2001
> +++ screen.ti.fix Fri Mar 30 18:44:46 2001
> @@ -15,7 +15,7 @@
> kf3=\EOR, kf4=\EOS, kf5=\E[15~, kf6=\E[17~,
> kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[1~,
> kend=\E[4~,
> - kich1=\E[2~, kll=\E[4~, knp=\E[6~, kpp=\E[5~, nel=\EE,
> + kich1=\E[2~, knp=\E[6~, kpp=\E[5~, nel=\EE,
> rc=\E8, rev=\E[7m, ri=\EM, rmir=\E[4l, rmkx=\E[?1l\E>,
> rmso=\E[23m, rmul=\E[24m, rs2=\Ec, sc=\E7, sgr0=\E[m,
> smir=\E[4h, smkx=\E[?1h\E=, smso=\E[3m, smul=\E[4m,
> @@ -40,7 +40,7 @@
> kf3=\EOR, kf4=\EOS, kf5=\E[15~, kf6=\E[17~,
> kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[1~,
> kend=\E[4~,
> - kich1=\E[2~, kll=\E[4~, knp=\E[6~, kpp=\E[5~, nel=\EE,
> + kich1=\E[2~, knp=\E[6~, kpp=\E[5~, nel=\EE,
> rc=\E8, rev=\E[7m, ri=\EM, rmir=\E[4l, rmkx=\E[?1l\E>,
> rmso=\E[23m, rmul=\E[24m, rs2=\Ec, sc=\E7, sgr0=\E[m,
> smir=\E[4h, smkx=\E[?1h\E=, smso=\E[3m, smul=\E[4m,
>
>
--
T.E.Dickey <dickey@herndon4.his.com>
http://dickey.his.com
ftp://dickey.his.com
Information forwarded to debian-bugs-dist@lists.debian.org, Daniel Jacobowitz <ncurses-maint@debian.org>:
Bug#92215; Package ncurses-base.
(full text, mbox, link).
Acknowledgement sent to dickey@herndon4.his.com:
Extra info received and forwarded to list. Copy sent to Daniel Jacobowitz <ncurses-maint@debian.org>.
(full text, mbox, link).
Information forwarded to debian-bugs-dist@lists.debian.org, Daniel Jacobowitz <ncurses-maint@debian.org>:
Bug#92215; Package ncurses-base.
(full text, mbox, link).
Acknowledgement sent to Oskar Liljeblad <osk@hem.passagen.se>:
Extra info received and forwarded to list. Copy sent to Daniel Jacobowitz <ncurses-maint@debian.org>.
(full text, mbox, link).
Message #20 received at 92215@bugs.debian.org (full text, mbox, reply):
On Friday, March 30, 2001 at 12:35, Thomas E. Dickey wrote:
> On Fri, 30 Mar 2001, Oskar Liljeblad wrote:
>
> this is really an issue for 'screen' (there is no point in ncurses having
> an incompatible terminfo for 'screen' to workaround problems in
> applications that use 'screen').
The terminfo capability "kend" (termcap "@7") represents "end key",
and "kll" (termcap "kH") "lower-left key (home down)". In the
terminfo description for screen, these capabilities have the same
value. This could only mean that the keys "end" and "home down" send
the same characters when pressed. This is not the case. Therefore,
one of them should be changed or removed. This would be "kll", since
the end key always* sends "\E4~" when in a screen virtual terminal.
(* Tested and verified with xterm, rxvt, linux console, and Gnome
Terminal.) I'm positive this is a bug in the screen.ti.
Besides, the terminfo description for screen is not incomplete just
because you remove "kll". The terminfo descriptions for xterm,
xterm-color, linux, vt200 do not have "kll" (but they all have "kend").
Oskar Liljeblad (osk@hem.passagen.se)
Information forwarded to debian-bugs-dist@lists.debian.org, Daniel Jacobowitz <ncurses-maint@debian.org>:
Bug#92215; Package ncurses-base.
(full text, mbox, link).
Acknowledgement sent to dickey@herndon4.his.com:
Extra info received and forwarded to list. Copy sent to Daniel Jacobowitz <ncurses-maint@debian.org>.
(full text, mbox, link).
Message #25 received at 92215@bugs.debian.org (full text, mbox, reply):
On Fri, 30 Mar 2001, Oskar Liljeblad wrote:
so argue with the (upstream) 'screen' maintainer, who is not much
interested in terminfo (he prefers termcap).
> On Friday, March 30, 2001 at 12:35, Thomas E. Dickey wrote:
> > On Fri, 30 Mar 2001, Oskar Liljeblad wrote:
> >
> > this is really an issue for 'screen' (there is no point in ncurses having
> > an incompatible terminfo for 'screen' to workaround problems in
> > applications that use 'screen').
>
> The terminfo capability "kend" (termcap "@7") represents "end key",
> and "kll" (termcap "kH") "lower-left key (home down)". In the
> terminfo description for screen, these capabilities have the same
> value. This could only mean that the keys "end" and "home down" send
> the same characters when pressed. This is not the case. Therefore,
> one of them should be changed or removed. This would be "kll", since
> the end key always* sends "\E4~" when in a screen virtual terminal.
> (* Tested and verified with xterm, rxvt, linux console, and Gnome
> Terminal.) I'm positive this is a bug in the screen.ti.
>
> Besides, the terminfo description for screen is not incomplete just
> because you remove "kll". The terminfo descriptions for xterm,
> xterm-color, linux, vt200 do not have "kll" (but they all have "kend").
>
> Oskar Liljeblad (osk@hem.passagen.se)
>
--
T.E.Dickey <dickey@herndon4.his.com>
http://dickey.his.com
ftp://dickey.his.com
Information forwarded to debian-bugs-dist@lists.debian.org, Daniel Jacobowitz <ncurses-maint@debian.org>:
Bug#92215; Package ncurses-base.
(full text, mbox, link).
Acknowledgement sent to dickey@herndon4.his.com:
Extra info received and forwarded to list. Copy sent to Daniel Jacobowitz <ncurses-maint@debian.org>.
(full text, mbox, link).
Message #30 received at 92215@bugs.debian.org (full text, mbox, reply):
grumble
(if you would read screen's manpage, it would make a shorter conversation).
tic this:
screen.xterm|screen, adapted to xterm,
acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
kll@,
use=xterm,
--
Thomas E. Dickey <dickey@herndon4.his.com>
http://dickey.his.com
ftp://dickey.his.com
Information forwarded to debian-bugs-dist@lists.debian.org, Daniel Jacobowitz <ncurses-maint@debian.org>:
Bug#92215; Package ncurses-base.
(full text, mbox, link).
Acknowledgement sent to Oskar Liljeblad <osk@hem.passagen.se>:
Extra info received and forwarded to list. Copy sent to Daniel Jacobowitz <ncurses-maint@debian.org>.
(full text, mbox, link).
Message #35 received at 92215@bugs.debian.org (full text, mbox, reply):
On Friday, March 30, 2001 at 16:23, Thomas Dickey wrote:
> grumble
> (if you would read screen's manpage, it would make a shorter conversation).
What do you mean? Is there some part of screen's manpage that I should
read?
> tic this:
>
> screen.xterm|screen, adapted to xterm,
> acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
> kll@,
> use=xterm,
I don't see what you're trying to achieve with this... This terminfo
description would be required for not only xterm terminals, but
also linux, rxvt, eterm etc...
The point is that screen is wrong. Consider what would happen with
the current terminfo. If a client receives \E[4~, how is it to know
if the user has pressed END (kend) or LOWER-DOWN (kll)? Either
you have kll=\E[4~ or kend=\E[4~, but not both.
If you check earlier versions of screen you'll see that there was
first only kll=\E[4~, then kend was added with the same value. Apparently
someone tried to fix the problem... But in the wrong way.
Oskar Liljeblad (osk@hem.passagen.se)
Information forwarded to debian-bugs-dist@lists.debian.org, Daniel Jacobowitz <ncurses-maint@debian.org>:
Bug#92215; Package ncurses-base.
(full text, mbox, link).
Acknowledgement sent to dickey@herndon4.his.com:
Extra info received and forwarded to list. Copy sent to Daniel Jacobowitz <ncurses-maint@debian.org>.
(full text, mbox, link).
Message #40 received at 92215@bugs.debian.org (full text, mbox, reply):
On Fri, Mar 30, 2001 at 11:19:12PM +0200, Oskar Liljeblad wrote:
> On Friday, March 30, 2001 at 16:23, Thomas Dickey wrote:
> > grumble
> > (if you would read screen's manpage, it would make a shorter conversation).
>
> What do you mean? Is there some part of screen's manpage that I should
> read?
When screen tries to figure out a terminal name for
itself, it first looks for an entry named "screen.<term>",
where <term> is the contents of your $TERM variable. If
no such entry exists, screen tries "screen" (or "screen-w"
if the terminal is wide (132 cols or more)). If even this
entry cannot be found, "vt100" is used as a substitute.
Since it's a nuisance for me to customize these myself, I had (unrelated to
this discussion) on my to-do list to add screen.teraterm and screen.xterm as
examples in ncurses.
> > tic this:
> >
> > screen.xterm|screen, adapted to xterm,
> > acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
> > kll@,
> > use=xterm,
>
> I don't see what you're trying to achieve with this... This terminfo
> description would be required for not only xterm terminals, but
> also linux, rxvt, eterm etc...
actually, since screen's translation of terminal information has some
glitches (such as the acsc string), the corresponding screen.XXX's
would not necessarily be identical.
> The point is that screen is wrong. Consider what would happen with
> the current terminfo. If a client receives \E[4~, how is it to know
> if the user has pressed END (kend) or LOWER-DOWN (kll)? Either
> you have kll=\E[4~ or kend=\E[4~, but not both.
>
> If you check earlier versions of screen you'll see that there was
> first only kll=\E[4~, then kend was added with the same value. Apparently
> someone tried to fix the problem... But in the wrong way.
As I recall the discussion, screen's maintainer wants kll because the
corresponding termcap entry is (according to him), much more widely used than
the conflicting kend.
>
> Oskar Liljeblad (osk@hem.passagen.se)
--
Thomas E. Dickey <dickey@herndon4.his.com>
http://dickey.his.com
ftp://dickey.his.com
Information forwarded to debian-bugs-dist@lists.debian.org, Daniel Jacobowitz <ncurses-maint@debian.org>:
Bug#92215; Package ncurses-base.
(full text, mbox, link).
Acknowledgement sent to Oskar Liljeblad <osk@hem.passagen.se>:
Extra info received and forwarded to list. Copy sent to Daniel Jacobowitz <ncurses-maint@debian.org>.
(full text, mbox, link).
Message #45 received at 92215@bugs.debian.org (full text, mbox, reply):
On Friday, March 30, 2001 at 16:35, Thomas Dickey wrote:
>
> > The point is that screen is wrong. Consider what would happen with
> > the current terminfo. If a client receives \E[4~, how is it to know
> > if the user has pressed END (kend) or LOWER-DOWN (kll)? Either
> > you have kll=\E[4~ or kend=\E[4~, but not both.
> >
> > If you check earlier versions of screen you'll see that there was
> > first only kll=\E[4~, then kend was added with the same value. Apparently
> > someone tried to fix the problem... But in the wrong way.
>
> As I recall the discussion, screen's maintainer wants kll because the
> corresponding termcap entry is (according to him), much more widely used
> than the conflicting kend.
This is not correct for Debian (or everyone who uses ncurses).
I've made a script to make some statistics of the existance of
kll and kend capabilities in terminfo descriptions.
Here's the script:
#!/usr/bin/perl
foreach $n (`toe | cut -f1 | sort | uniq`) {
$n =~ s/\s+(.*)//s;
$_ = `infocmp -I $n`;
($kll) = /\skll=([^,]*),/;
($kend) = /\skend=([^,]*),/;
push @same,$n if (defined $kll && defined $kend && $kll eq $kend);
push @both,$n if (defined $kll && defined $kend && $kll ne $kend);
push @kend,$n if (!defined $kll && defined $kend);
push @kll,$n if (defined $kll && !defined $kend);
push @none,$n if (!defined $kll && !defined $kend);
print " $n \r";
$total++;
}
print "same:",scalar(@same)," both:",scalar(@both)," kll:",scalar(@kll);
print " kend:",scalar(@kend)," none:",scalar(@none)," total:$total\n\n";
print "same:\n", join(" ", @same), "\n\n";
print "both:\n", join(" ", @both), "\n\n";
print "kll only:\n", join(" ", @kll), "\n\n";
print "kend only:\n", join(" ", @kend), "\n\n";
The output on my Debian system is:
same:2 both:13 kll:72 kend:210 none:1030 total:1327
same:
screen screen-w
both:
att4415 att4415-nl att4415-rv att4415-rv-nl att4415-w att4415-w-nl
att4415-w-rv att4415-w-rv-n att5420_2 att5420_2-w mach mach-bold mach-color
kll only:
amiga-vnc ansi-color-2-emx ansi-color-3-emx ansi-emx att4410 att4410v1-w
att4426 att5410-w att5410v1 att5620 att5620-1 att5620-24 att5620-34
att5620-s bsdos-pc bsdos-pc-m bsdos-pc-nobold bsdos-ppc hp+arrows
hp+pfk+arrows hp150 hp2 hp2382a hp2397a hp2621-a hp2621-ba hp2621b
hp2621b-kx hp2621b-kx-p hp2621b-p hp2621p-a hp2622 hp2623 hp2624
hp2624-10p hp2624b-10p-p hp2624b-p hp2626 hp2626-12 hp2626-12-s
hp2626-12x40 hp2626-ns hp2626-s hp2626-x40 hp70092 hp98550 hpterm ibmpc3
memhp mono-emx newhp newhpkeyboard oldpc3 pc3 pcvt25 pcvt25w pcvt28
pcvt28w pcvt35 pcvt35w pcvt40 pcvt40w pcvt43 pcvt43w pcvt50 pcvt50w
pcvtXX scrhp vip vip-H vip-Hw vip-w
As you can see, kend is more common than kll. Another interesting
thing is that screen and screen-w are the only descriptions that have
kll=kend. It is my _belief_ that having kll=kend is not permitted in
terminfo description.
So basicly I think there are strong grounds for changing the screen
terminfo description.
Regards,
Oskar Liljeblad (osk@hem.passagen.se)
Message sent on to Oskar Liljeblad <osk@hem.passagen.se>:
Bug#92215.
(full text, mbox, link).
Message #48 received at 92215-submitter@bugs.debian.org (full text, mbox, reply):
Version: 5.2.20020112a-8
Neither the terminfo entry distributed with screen 3.9.13-1
(/usr/share/doc/screen/terminfo/screeninfo.src) nor "infocmp screen"
output with ncurses-base 5.2.20020112a-8 contains "kll". Can this bug
be closed?
--
Robbe
Bug closed, send any further explanations to Oskar Liljeblad <osk@hem.passagen.se>
Request was from Oskar Liljeblad <oskar@osk.mine.nu>
to control@bugs.debian.org.
(full text, mbox, link).
Bug reopened, originator set to oskar@osk.mine.nu.
Request was from Oskar Liljeblad <oskar@osk.mine.nu>
to control@bugs.debian.org.
(full text, mbox, link).
Reply sent to daniel@debian.org:
You have taken responsibility.
(full text, mbox, link).
Notification sent to oskar@osk.mine.nu:
Bug acknowledged by developer.
(full text, mbox, link).
Message #57 received at 92215-done@bugs.debian.org (full text, mbox, reply):
see http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=92215#48
otherwise please provide new evidence as I didn't found one myself.
--
Address: Daniel Baumann, Burgunderstrasse 3, CH-4562 Biberist
Email: daniel.baumann@panthera-systems.net
Internet: http://people.panthera-systems.net/~daniel-baumann/
Bug archived.
Request was from Debbugs Internal Request <owner@bugs.debian.org>
to internal_control@bugs.debian.org.
(Tue, 22 Jul 2008 07:28:26 GMT) (full text, mbox, link).
Bug unarchived.
Request was from Sven Joachim <svenjoac@gmx.de>
to control@bugs.debian.org.
(Sat, 18 Sep 2010 12:03:02 GMT) (full text, mbox, link).
Forcibly Merged 91275 92215.
Request was from Sven Joachim <svenjoac@gmx.de>
to control@bugs.debian.org.
(Sat, 18 Sep 2010 12:03:03 GMT) (full text, mbox, link).
Bug No longer marked as found in versions 5.2.20020112a-8.
Request was from Sven Joachim <svenjoac@gmx.de>
to control@bugs.debian.org.
(Sat, 18 Sep 2010 12:39:10 GMT) (full text, mbox, link).
Bug Marked as fixed in versions 5.2.20020112a-1.
Request was from Sven Joachim <svenjoac@gmx.de>
to control@bugs.debian.org.
(Sat, 18 Sep 2010 12:39:10 GMT) (full text, mbox, link).
Bug archived.
Request was from Debbugs Internal Request <owner@bugs.debian.org>
to internal_control@bugs.debian.org.
(Sun, 17 Oct 2010 07:31:01 GMT) (full text, mbox, link).
Send a report that this bug log contains spam.
Debian bug tracking system administrator <owner@bugs.debian.org>.
Last modified:
Wed Jul 3 04:16:43 2024;
Machine Name:
buxtehude
Debian Bug tracking system
Debbugs is free software and licensed under the terms of the GNU
Public License version 2. The current version can be obtained
from https://bugs.debian.org/debbugs-source/.
Copyright © 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson,
2005-2017 Don Armstrong, and many other contributors.