vt: execute: \t: use tab stops from tab stop list

Instead of assuming hardcoded 8-width tab stops, use the tab stops
from the tab stop list.
This commit is contained in:
Daniel Eklöf 2019-11-16 10:57:39 +01:00
parent 9ff48c2015
commit 65ff3656f7
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F

11
vt.c
View file

@ -866,9 +866,14 @@ action(struct terminal *term, enum action _action, uint8_t c)
case '\x09': {
/* HT - horizontal tab */
int col = term->cursor.col;
col = (col + 8) / 8 * 8;
term_cursor_right(term, col - term->cursor.col);
int new_col = term->cursor.col;
tll_foreach(term->tab_stops, it) {
if (it->item >= term->cursor.col) {
new_col = it->item;
break;
}
}
term_cursor_right(term, new_col - term->cursor.col);
break;
}