-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 The following is from a Debian bug report at http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=144178
> The sequences to shift to and from the alternate character set (terminfo > names: smacs & rmacs) are defined in ncurses' terminfo for screen as ^N > and ^O respectively. > > Unfortunatley screen only understands \E(0 and \E(B. It also emits these > sequences to instruct the terminal its running in to move in/out of the > ACS. This is wrong at least when running with TERM=xterm, as infocmp > shows that the correct sequences for this terminal type are ^N/^O. My response: > It looks to me as if the fault is in the terminfo description for screen. > > Screen does in fact understand ^N/^O, and processes them according to > ISO-2022. It does not simply pass them through, but rather processes > them itself, to invoke the G1 character set to GL. > > However, screen's default value for "charset" is "BBBB02", which uses > US-ASCII as the G1 character set. Setting it to "B0BB02" uses the > box-drawing characters for G1, which would cause ^N/^O to behave as you > expect them to (and would render the terminfo description accurately). > > Another way to invoke the box-drawing character set to G1 would be: > > $ printf '\033)0' > > (Note the ')', rather than '('). > > That would cause no immediately visible change, but ^N/^O would start > working as you expect. > > Note that, if you're running in UTF-8 mode, screen apparently uses the > Unicode box characters, rather than the parent terminal's smacs feature. > > So, to sum up, either the terminfo description (and screen's $TERMCAP) > should specify '\E(0' / '\E)B', or else screen should default to > "B0BB02" for the value of "charset". I'd like to see both things happen: having the "0"-designated character set invoked to G1 seems to be awfully common (though, leaving it as it is does have an advantage in avoiding charset troubles after accidentally catting a binary file in screen). Am I mistaken, though, that, as things stand currently, the standard terminfo and $TERMCAP values are lying about how to invoke the "alternate charset"? - -- Micah J. Cowan Programmer, musician, typesetting enthusiast, gamer, and GNU Wget Project Maintainer. http://micah.cowan.name/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFIWvKv7M8hyUobTrERAnsbAJ4iEvtRdSaqMNnpXXHtAhXcllir2wCdGu5Z 1h1v+nDToDRqDHU784dnJT4= =lITK -----END PGP SIGNATURE-----