Excerpts from Mark Alexander's message of 2010-01-27 16:57:33 -0500:
> I've been noticing this problem for a long time now.
> I think it happens with tabs anywhere in the
> message, or perhaps at the beginning of lines,
> but I haven't played with it enough to know for sure.
Sup assumes that 1 codepoint == 1 screen cell. This also causes problems
with double-width Chinese(?) characters. William has suggested using
wc[s]width, and now that we've got our own fork of ncurses-ruby we might
as well stick it in there. I looked at it briefly and iirc the
troublesome part was getting a wchar_t from the bytes in a Ruby string.
Tabs are funny because their width depends on their position. I say
replace all tabs with 2 spaces before calling ncurses.
|