I see - can reproduce it here. It looks as if vile's got confused at some
point (there are a half-dozen knots in display.c which I thought were all
aligned). It should show as \?A3 and track the cursor according to that
4-column width. The cursor is moving properly, but the display isn't.
This seems to fix it:
--- display.c 2008/03/06 01:10:52 1.471
+++ display.c 2008/03/26 23:06:14
@@ -732,7 +732,7 @@
if (w_val(wp, WMDLIST)) {
rc = vtlistc(wp, src, limit);
} else if (b_is_utfXX(wp->w_bufp)
- && column_sizes(wp, src, limit, &rc) == COLS_UTF8) {
+ && column_sizes(wp, src, limit, &rc) >= COLS_8BIT) {
rc = vtlistc(wp, src, limit);
} else {
rc = vtputc(wp, src, limit);