#922153 ncurses-base: for screen and variants, please change smacs and rmacs to \E(0 and \E(B respectively

#922153#5
Date:
2019-02-12 17:48:19 UTC
From:
To:
terminfo description of screen and variants have:

  smacs=^N
  rmacs=^O

One issue is that these sequences are not recognized by "less -R".
A workaround would be to change them to:

  smacs=\E(0
  rmacs=\E(B

as in various other terminfo descriptions (e.g., xterm).

This seems to work even in the Linux consoles (virtual terminals),
which do not support \E(0 and \E(B, i.e. it appears that GNU Screen
does the translation for the real terminal.

Thus I suggest such a change, if there are no drawbacks.

Note: this was also suggested in

https://savannah.gnu.org/bugs/?23646

#922153#10
Date:
2019-02-23 22:37:19 UTC
From:
To:
...a wishlist item for "less".

hmm - see "infocmp linux".  We've discussed this before, by the way.

not exactly - the last comment there points out that enacs has to be sent.

#922153#13
Date:
2019-02-23 22:37:19 UTC
From:
To:
...a wishlist item for "less".

hmm - see "infocmp linux".  We've discussed this before, by the way.

not exactly - the last comment there points out that enacs has to be sent.

#922153#18
Date:
2019-02-24 00:56:06 UTC
From:
To:
I had reported the issue more than 12 years ago, in 2006:

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=399848

No, "tput enacs" returns an error in Linux consoles, and has no effect
there. For instance, in xterm:

$ echo "`tput smacs`mq`tput rmacs`> foo" > z

(i.e. this uses the \E(0 and \E(B escape sequences).

If I cat z directly in a Linux console, I get

mq> foo

but if I cat z in a GNU Screen running in a Linux console, I get

└─> foo

This means that using

  smacs=\E(0
  rmacs=\E(B

in a screen terminfo should be OK.

#922153#23
Date:
2019-02-24 02:17:38 UTC
From:
To:
not so (see screenshot).
#922153#26
Date:
2019-02-24 02:17:38 UTC
From:
To:
not so (see screenshot).
#922153#31
Date:
2019-02-24 23:05:58 UTC
From:
To:
This is not what I obtain:

zira:~> env | grep '^TERM'
TERM=linux
zira:~> infocmp
#       Reconstructed via infocmp from file: /home/vinc17/.terminfo/l/linux
[...]

The infocmp(1) man page says:

FILES
       /etc/terminfo       Compiled terminal description database.

This doesn't look right.

#922153#36
Date:
2019-04-06 19:20:21 UTC
From:
To:
On Mon, Feb 25, 2019 at 12:05:58AM +0100, Vincent Lefevre wrote:
...
...

https://invisible-island.net/ncurses/ncurses.faq.html#home_terminfo

(the file got there by your running infocmp without root-privilege)

#922153#39
Date:
2019-04-06 19:20:21 UTC
From:
To:
On Mon, Feb 25, 2019 at 12:05:58AM +0100, Vincent Lefevre wrote:
...
...

https://invisible-island.net/ncurses/ncurses.faq.html#home_terminfo

(the file got there by your running infocmp without root-privilege)

#922153#44
Date:
2022-02-03 10:20:23 UTC
From:
To:
Yes, I do that on purpose. The issue there is that the infocmp(1)
man page does not give correct information. I've just reported:

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1004901