Glenn Maynard wrote on 2002-02-03 19:17 UTC: > It seems the problem is that terminfo has no real way to deal with these > sequences. > > That is, if I'm in UTF-8, then my terminfo caps acsc, enacs, smacs, and > rmacs need to be changed. Terminfo can't simply blindly change what it > returns for these sequences because the locale charset is UTF-8; there's > a chance the library is being used to simply read caps (ie. infocmp).
I believe you are thinking the wrong way here. As soon as you are in UTF-8 mode, the only correct way to send block graphics characters to the terminal is via the U+25xx UTF-8 sequences, not via terminfo ISO 2022 fiddling. Terminfo sequences must *not at all* be used in UTF-8 locales to draw certain characters. If wctomb(&seq_hor, 0x2500) > 0, then do not use terminfo to draw this graphics character, because you have already the correct sequence to draw BOX DRAWINGS LIGHT HORIZONTAL stored in seq_hor. Sounds like there are bugs in both ncurses/slang and xterm here at the moment that cancel each other out. Both should be fixed as soon as possible. Markus -- Markus G. Kuhn, Computer Laboratory, University of Cambridge, UK Email: mkuhn at acm.org, WWW: <http://www.cl.cam.ac.uk/~mgk25/> -- Linux-UTF8: i18n of Linux on all levels Archive: http://mail.nl.linux.org/linux-utf8/
