X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=ncurses%2Fwidechar%2Flib_wacs.c;h=5e2c9fdfdba8da99d1a5ac72ab69c4648849948b;hp=c956cfdba7e75ba64bab0dd0f1afb06a1961a8e1;hb=7a6bbc8cf41c5186d46accc3d08622dc86526b34;hpb=a8987e73ec254703634802b4f7ee30d3a485524d diff --git a/ncurses/widechar/lib_wacs.c b/ncurses/widechar/lib_wacs.c index c956cfdb..5e2c9fdf 100644 --- a/ncurses/widechar/lib_wacs.c +++ b/ncurses/widechar/lib_wacs.c @@ -1,5 +1,5 @@ /**************************************************************************** - * Copyright (c) 2002 Free Software Foundation, Inc. * + * Copyright (c) 2002,2006 Free Software Foundation, Inc. * * * * Permission is hereby granted, free of charge, to any person obtaining a * * copy of this software and associated documentation files (the * @@ -31,9 +31,8 @@ ****************************************************************************/ #include -#include -MODULE_ID("$Id: lib_wacs.c,v 1.6 2002/12/21 12:30:19 tom Exp $") +MODULE_ID("$Id: lib_wacs.c,v 1.8 2008/11/16 00:19:59 juergen Exp $") NCURSES_EXPORT_VAR(cchar_t) * _nc_wacs = 0; @@ -98,14 +97,17 @@ _nc_init_wacs(void) _nc_wacs = typeCalloc(cchar_t, ACS_LEN); for (n = 0; n < SIZEOF(table); ++n) { + int wide = wcwidth(table[n].value[active]); + m = table[n].map; - if (active) { + if (active && (wide == 1)) { SetChar(_nc_wacs[m], table[n].value[active], A_NORMAL); } else if (acs_map[m] & A_ALTCHARSET) { SetChar(_nc_wacs[m], m, A_ALTCHARSET); } else { SetChar(_nc_wacs[m], table[n].value[0], A_NORMAL); } + T(("#%d, SetChar(%c, %#04x) = %s", n, m, table[n].value[active],