[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[screen-devel] compounding trailing whitespace when using utf8 in hardst
[screen-devel] compounding trailing whitespace when using utf8 in hardstatus/caption
Fri, 14 Jan 2011 13:00:55 -0600
I'm quite interested commit 28c161010579e59ae5d310db277f8978911ac794,
which fixes the display of multibyte unicode characters in the caption
and hardstatus lines.
I can confirm that, in fact, that commit does display utf8 characters,
such as "☮" correctly. Thanks!
However, it does introduce a new bug, though. It seems that the
padding introduced by %=, though isn't quite handled correctly.
You can easily test it like this:
hardstatus string '☮%c%=%c'
Then, building the latest screen from git:
./screen -c /tmp/screenrc
The last line will look like this:
Note the two trailing whitespace characters after the final %c (time)
display. This will scale linearly with the number of utf8 characters
you put in your hardstatus. That is, if I put 4 x ☮, there will be 8
It seems to me that there is some accounting missing somewhere, among
the various places that string-length is calculated, which might
involve multi-byte characters.
I've spent a few hours fiddling with the code, as has my colleague on
CC, Kees Cook. He's come up with the attached patch, but it's not
quite there yet. Can anyone here give us a few pointers to nudge us
Ubuntu Core Developer
Description: Text Data
- [screen-devel] compounding trailing whitespace when using utf8 in hardstatus/caption,
Dustin Kirkland <=