Re: Interesting things found in ncurses that affect screen
On Mon, 18 Jul 2005, Michael Schroeder wrote: On Sun, Jul 17, 2005 at 09:19:38PM +0200, Nikolai Weibull wrote: ... Don't ask me, I'm not aware of any problems screen has with UTF-8. Maybe Thomas Dickey, the ncurses author, can shed some light on this. The code's doing what it is intended: when screen is running in UTF-8 mode, it ignores the termcap information, only accepts the UTF-8 encoding for line-drawing characters. Normally the $TERM value gives the required information. That function helps check for known cases where it does not. -- Thomas E. Dickey http://invisible-island.net ftp://invisible-island.net ___ screen-users mailing list screen-users@gnu.org http://lists.gnu.org/mailman/listinfo/screen-users
Re: Interesting things found in ncurses that affect screen
Juergen Weigert wrote: On Jul 17, 05 21:19:38 +0200, Nikolai Weibull wrote: ncurses-5.4/ncurses/tinfo/lib_setup.c: /* * Check for known broken cases where a UTF-8 locale breaks the alternate * character set. */ NCURSES_EXPORT(int) _nc_locale_breaks_acs(void) { char *env = getenv(TERM); if (env != 0) { if (strstr(env, linux)) return 1; /* always broken */ if (strstr(env, screen) != 0 ((env = getenv(TERMCAP)) != 0 strstr(env, screen) != 0) strstr(env, hhII00) != 0) { return 1; } } return 0; } So, what's the deal? That is odd. We should ask upstream ncurses when and why this code appeared. Upstream is still Thomas Dickey, right? From the 5.4 changelog on http://www.gnu.org/software/ncurses/ncurses.html (why I didn't think to check it before posting is beyond me): Major bug fixes: * implement a workaround so that line-drawing works with screen's crippled UTF-8 support (tested with 3.9.13). This only works with the wide-character support (--enable-widec); the normal library will simply suppress line-drawing when running in a UTF-8 locale in screen I have compiled ncurses with widec support and am running screen 4.0.2. LANG is set to en_US.UTF-8, nikolai -- Nikolai Weibull: now available free of charge at http://bitwi.se/! Born in Chicago, IL USA; currently residing in Gothenburg, Sweden. main(){printf(linux[\021%six\012\0],(linux)[have]+fun-97);} ___ screen-users mailing list screen-users@gnu.org http://lists.gnu.org/mailman/listinfo/screen-users
Re: Interesting things found in ncurses that affect screen
On Mon, Jul 18, 2005 at 07:37:58AM -0400, Thomas Dickey wrote: On Mon, 18 Jul 2005, Michael Schroeder wrote: On Mon, Jul 18, 2005 at 06:25:24AM -0400, Thomas Dickey wrote: The code's doing what it is intended: when screen is running in UTF-8 mode, it ignores the termcap information, only accepts the UTF-8 encoding for line-drawing characters. No, that's not right. There once was a version of screen that ignored termcap information, but this got changed a long time ago... That's hard for me to see, since I haven't seen a recent changelog for screen, so determining what it does means I get to read through the code. *grin*. That one counted as bugfix, so there is no entry in the changelog (aka patchlevel.h). Cheers, Michael. -- Michael Schroeder [EMAIL PROTECTED] main(_){while(_=~getchar())putchar(~_-1/(~(_|32)/13*2-11)*13);} ___ screen-users mailing list screen-users@gnu.org http://lists.gnu.org/mailman/listinfo/screen-users