1
0
mirror of https://github.com/irssi/irssi.git synced 2024-12-04 14:46:39 -05:00

term_addch() : utf-8 fixes for cursor positioning.

git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2563 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
Timo Sirainen 2002-03-10 19:03:27 +00:00 committed by cras
parent e5ab1daf30
commit b18af319cf

View File

@ -379,9 +379,15 @@ void term_addch(TERM_WINDOW *window, int chr)
if (term_detached) return; if (term_detached) return;
if (vcmove) term_move_real(); if (vcmove) term_move_real();
/* With UTF-8, move cursor only if this char is either single-byte
(8. bit on) or beginning of multibyte (7+8 bits on) */
if (term_type != TERM_TYPE_UTF8 ||
(chr & 0x80) == 0 || (chr & 0x40) == 0) {
term_printed_text(1); term_printed_text(1);
if (vcy != term_height || vcx != 0) if (vcy != term_height || vcx != 0)
putc(chr, window->term->out); putc(chr, window->term->out);
}
} }
static void term_addch_utf8(TERM_WINDOW *window, unichar chr) static void term_addch_utf8(TERM_WINDOW *window, unichar chr)