From 05f94f1b8b638a5f0b347d972bbbf1c3cad6f3e6 Mon Sep 17 00:00:00 2001 From: C. McEnroe Date: Sun, 6 Sep 2020 22:43:50 -0400 Subject: Handle non-alignment tabs in line wrapping --- buffer.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/buffer.c b/buffer.c index ff21eb4..7478211 100644 --- a/buffer.c +++ b/buffer.c @@ -128,6 +128,9 @@ static int flow(struct Lines *hard, int cols, const struct Line *soft) { // zero-width, so just remove them entirely. memmove(str, &str[n], strlen(&str[n]) + 1); continue; + } else if (wc == L'\t') { + // XXX: Assuming TABSIZE = 8. + width += 8 - (width % 8); } else if (wc < L' ') { // XXX: ncurses will render these as "^A". width += 2; -- cgit 1.4.1-2-gfad0