Debian Bug report logs - #515609
ncurses-base: in linux terminfo data, smacs and rmacs are incorrect

version graph

Package: ncurses-base; Maintainer for ncurses-base is Craig Small <csmall@debian.org>; Source for ncurses-base is src:ncurses.

Reported by: Vincent Lefevre <vincent@vinc17.org>

Date: Mon, 16 Feb 2009 13:51:02 UTC

Severity: normal

Tags: moreinfo

Found in version ncurses/5.7+20090207-1

Reply or subscribe to this bug.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Daniel Baumann <daniel@debian.org>:
Bug#515609; Package ncurses-base. (Mon, 16 Feb 2009 13:51:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to Vincent Lefevre <vincent@vinc17.org>:
New Bug report received and forwarded. Copy sent to Daniel Baumann <daniel@debian.org>. (Mon, 16 Feb 2009 13:51:04 GMT) Full text and rfc822 format available.

Message #5 received at submit@bugs.debian.org (full text, mbox):

From: Vincent Lefevre <vincent@vinc17.org>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: ncurses-base: in linux terminfo data, smacs and rmacs are incorrect
Date: Mon, 16 Feb 2009 14:47:18 +0100
Package: ncurses-base
Version: 5.7+20090207-1
Severity: normal

In the linux terminfo data: smacs=\E[11m and rmacs=\E[10m
However the correct values are: smacs=^N and rmacs=^O

These values work in practice (contrary to \E[11m and \E[10m)
and this is what is mentioned on:

  http://lkml.indiana.edu/hypermail/linux/kernel/0602.2/0868.html

-- System Information:
Debian Release: 5.0
  APT prefers oldstable
  APT policy: (500, 'oldstable'), (500, 'unstable'), (500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.26.5-20080922 (SMP w/2 CPU cores; PREEMPT)
Locale: LANG=POSIX, LC_CTYPE=en_US.ISO8859-1 (charmap=ISO-8859-1)
Shell: /bin/sh linked to /bin/bash

Versions of packages ncurses-base depends on:
ii  libncurses5               5.7+20090207-1 shared libraries for terminal hand

ncurses-base recommends no packages.

ncurses-base suggests no packages.

-- no debconf information




Information forwarded to debian-bugs-dist@lists.debian.org, Daniel Baumann <daniel@debian.org>:
Bug#515609; Package ncurses-base. (Mon, 16 Feb 2009 21:00:06 GMT) Full text and rfc822 format available.

Acknowledgement sent to Thomas Dickey <dickey@his.com>:
Extra info received and forwarded to list. Copy sent to Daniel Baumann <daniel@debian.org>. (Mon, 16 Feb 2009 21:00:06 GMT) Full text and rfc822 format available.

Message #10 received at 515609@bugs.debian.org (full text, mbox):

From: Thomas Dickey <dickey@his.com>
To: Vincent Lefevre <vincent@vinc17.org>, 515609@bugs.debian.org
Cc: Daniel Baumann <daniel@debian.org>
Subject: Re: Bug#515609: ncurses-base: in linux terminfo data, smacs and rmacs are incorrect
Date: Mon, 16 Feb 2009 15:58:09 -0500 (EST)
On Mon, 16 Feb 2009, Vincent Lefevre wrote:

> Package: ncurses-base
> Version: 5.7+20090207-1
> Severity: normal
>
> In the linux terminfo data: smacs=\E[11m and rmacs=\E[10m
> However the correct values are: smacs=^N and rmacs=^O

perhaps.  SCS would be a better choice:

	\E(0
	\E(B

since they don't rely on the current state of the terminal.  However,
reading vt.c in 2.6.15, I see Linux's implementation of SCS is buggy,
since it won't update the G0/G1 if another SCS was made since the last
reset (see the case under ESsetG1).

> These values work in practice (contrary to \E[11m and \E[10m)
> and this is what is mentioned on:
>
>  http://lkml.indiana.edu/hypermail/linux/kernel/0602.2/0868.html

I see (had forgotten).  Seems that ^O/^N didn't use to work, either.

Perhaps SCS works properly in a current kernel (someone might want
to test it).

-- 
Thomas E. Dickey
http://invisible-island.net
ftp://invisible-island.net




Information forwarded to debian-bugs-dist@lists.debian.org, Debian QA Group <packages@qa.debian.org>:
Bug#515609; Package ncurses-base. (Sat, 03 Oct 2009 19:27:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to dickey@his.com:
Extra info received and forwarded to list. Copy sent to Debian QA Group <packages@qa.debian.org>. (Sat, 03 Oct 2009 19:27:02 GMT) Full text and rfc822 format available.

Message #15 received at 515609@bugs.debian.org (full text, mbox):

From: Thomas Dickey <dickey@his.com>
To: 515609@bugs.debian.org
Cc: 515609-submitter@bugs.debian.org
Subject: re: #515609 ncurses-base: in linux terminfo data, smacs and rmacs are incorrect
Date: Sat, 03 Oct 2009 15:13:35 -0400
[Message part 1 (text/plain, inline)]
I haven't overlooked this; however the mailing list provided a patch,
which may/may not have been included (the thread ends without any
indication that it was committed).  If it has, it would be nice to
know when it was.

-- 
Thomas E. Dickey <dickey@invisible-island.net>
http://invisible-island.net
ftp://invisible-island.net
[signature.asc (application/pgp-signature, inline)]

Message sent on to Vincent Lefevre <vincent@vinc17.org>:
Bug#515609. (Sat, 03 Oct 2009 19:27:06 GMT) Full text and rfc822 format available.

Added tag(s) moreinfo. Request was from Thomas Dickey <dickey@his.com> to control@bugs.debian.org. (Sat, 28 Nov 2009 18:51:06 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Craig Small <csmall@debian.org>:
Bug#515609; Package ncurses-base. (Tue, 27 Mar 2012 15:18:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Sven Joachim <svenjoac@gmx.de>:
Extra info received and forwarded to list. Copy sent to Craig Small <csmall@debian.org>. (Tue, 27 Mar 2012 15:18:03 GMT) Full text and rfc822 format available.

Message #25 received at 515609@bugs.debian.org (full text, mbox):

From: Sven Joachim <svenjoac@gmx.de>
To: 515609@bugs.debian.org
Cc: Vincent Lefevre <vincent@vinc17.org>
Subject: Re: Bug#515609: ncurses-base: in linux terminfo data, smacs and rmacs are incorrect
Date: Tue, 27 Mar 2012 17:15:10 +0200
On 2009-02-16 14:47 +0100, Vincent Lefevre wrote:

> Package: ncurses-base
> Version: 5.7+20090207-1
> Severity: normal
>
> In the linux terminfo data: smacs=\E[11m and rmacs=\E[10m
> However the correct values are: smacs=^N and rmacs=^O

This has been implemented in the 20110716 patchlevel and in the Debian
5.9-5 release, however it causes rather bad breakage in non-UTF-8
locales.  For instance, Midnight Commander displays funny characters
instead of nice line drawings with LC_ALL=C, and bug #665959 mentions a
similar problem in Mutt.

Cheers,
       Sven




Information forwarded to debian-bugs-dist@lists.debian.org, Craig Small <csmall@debian.org>:
Bug#515609; Package ncurses-base. (Tue, 27 Mar 2012 20:45:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to dickey@his.com:
Extra info received and forwarded to list. Copy sent to Craig Small <csmall@debian.org>. (Tue, 27 Mar 2012 20:45:03 GMT) Full text and rfc822 format available.

Message #30 received at 515609@bugs.debian.org (full text, mbox):

From: Thomas Dickey <dickey@his.com>
To: Sven Joachim <svenjoac@gmx.de>, 515609@bugs.debian.org
Cc: Vincent Lefevre <vincent@vinc17.org>
Subject: Re: Bug#515609: ncurses-base: in linux terminfo data, smacs and rmacs are incorrect
Date: Tue, 27 Mar 2012 16:39:52 -0400
[Message part 1 (text/plain, inline)]
On Tue, Mar 27, 2012 at 05:15:10PM +0200, Sven Joachim wrote:
> On 2009-02-16 14:47 +0100, Vincent Lefevre wrote:
> 
> > Package: ncurses-base
> > Version: 5.7+20090207-1
> > Severity: normal
> >
> > In the linux terminfo data: smacs=\E[11m and rmacs=\E[10m
> > However the correct values are: smacs=^N and rmacs=^O
> 
> This has been implemented in the 20110716 patchlevel and in the Debian
> 5.9-5 release, however it causes rather bad breakage in non-UTF-8
> locales.  For instance, Midnight Commander displays funny characters
> instead of nice line drawings with LC_ALL=C, and bug #665959 mentions a
> similar problem in Mutt.

hmm - I didn't notice that problem (or perhaps I did - see the 20110910 change
below).

Because ncurses won't _use_ the rmacs/smacs strings when it's running on Linux
console in UTF-8 mode, then it sounds as if the change was entirely incorrect
and should be reverted.

I did (later than the patch level you mentioned) make this choice configurable
(assuming that the kernel for the build is comparable to the system on which it
is installed):

20110910
	+ modify misc/gen_edit.sh to select a "linux" entry which works with
	  the current kernel rather than assuming it is always "linux3.0"
	  (cf: 20110716).

If the problem is simply from using pre-3.0 kernels, then that could be
addressed using the gen_edit.sh change.

Regarding smacs/rmacs, see "man ncurses" -

       NCURSES_NO_UTF8_ACS
            During initialization, the  ncurses  library  checks  for  special
            cases  where  VT100  line-drawing (and the corresponding alternate
            character set capabilities) described in the terminfo are known to
            be  missing.   Specifically,  when  running in a UTF-8 locale, the
            Linux console emulator and the GNU screen  program  ignore  these.
            Ncurses checks the TERM environment variable for these.  For other
            special cases, you should set this  environment  variable.   Doing
            this  tells  ncurses to use Unicode values which correspond to the
            VT100 line-drawing glyphs.   That  works  for  the  special  cases
            cited, and is likely to work for terminal emulators.

            When  setting this variable, you should set it to a nonzero value.
            Setting it to zero (or to a nonnumber) disables the special  check
            for Linux and screen.

-- 
Thomas E. Dickey <dickey@invisible-island.net>
http://invisible-island.net
ftp://invisible-island.net
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Craig Small <csmall@debian.org>:
Bug#515609; Package ncurses-base. (Wed, 28 Mar 2012 16:27:09 GMT) Full text and rfc822 format available.

Acknowledgement sent to Sven Joachim <svenjoac@gmx.de>:
Extra info received and forwarded to list. Copy sent to Craig Small <csmall@debian.org>. (Wed, 28 Mar 2012 16:27:09 GMT) Full text and rfc822 format available.

Message #35 received at 515609@bugs.debian.org (full text, mbox):

From: Sven Joachim <svenjoac@gmx.de>
To: dickey@his.com
Cc: 515609@bugs.debian.org, Vincent Lefevre <vincent@vinc17.org>
Subject: Re: Bug#515609: ncurses-base: in linux terminfo data, smacs and rmacs are incorrect
Date: Wed, 28 Mar 2012 18:24:43 +0200
On 2012-03-27 22:39 +0200, Thomas Dickey wrote:

> On Tue, Mar 27, 2012 at 05:15:10PM +0200, Sven Joachim wrote:
>> On 2009-02-16 14:47 +0100, Vincent Lefevre wrote:
>> 
>> > Package: ncurses-base
>> > Version: 5.7+20090207-1
>> > Severity: normal
>> >
>> > In the linux terminfo data: smacs=\E[11m and rmacs=\E[10m
>> > However the correct values are: smacs=^N and rmacs=^O
>> 
>> This has been implemented in the 20110716 patchlevel and in the Debian
>> 5.9-5 release, however it causes rather bad breakage in non-UTF-8
>> locales.  For instance, Midnight Commander displays funny characters
>> instead of nice line drawings with LC_ALL=C, and bug #665959 mentions a
>> similar problem in Mutt.
>
> hmm - I didn't notice that problem (or perhaps I did - see the 20110910 change
> below).
>
> Because ncurses won't _use_ the rmacs/smacs strings when it's running on Linux
> console in UTF-8 mode, then it sounds as if the change was entirely incorrect
> and should be reverted.

Seems so.

> I did (later than the patch level you mentioned) make this choice configurable
> (assuming that the kernel for the build is comparable to the system on which it
> is installed):
>
> 20110910
> 	+ modify misc/gen_edit.sh to select a "linux" entry which works with
> 	  the current kernel rather than assuming it is always "linux3.0"
> 	  (cf: 20110716).
>
> If the problem is simply from using pre-3.0 kernels, then that could be
> addressed using the gen_edit.sh change.

The only difference between linux2.6 and linux3.0 is the E3 capability
in the latter, and that is probably unrelated to the current problem.

Cheers,
       Sven





Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Fri Apr 18 06:39:59 2014; Machine Name: buxtehude.debian.org

Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.