diff options
Diffstat (limited to 'src/libvterm/t/harness.c')
-rw-r--r-- | src/libvterm/t/harness.c | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/src/libvterm/t/harness.c b/src/libvterm/t/harness.c index 8bbd8cfae..289d82928 100644 --- a/src/libvterm/t/harness.c +++ b/src/libvterm/t/harness.c @@ -540,7 +540,6 @@ int main(int argc UNUSED, char **argv UNUSED) int sense = 1; if(!screen) screen = vterm_obtain_screen(vt); - vterm_screen_enable_altscreen(screen, 1); vterm_screen_set_callbacks(screen, &screen_cbs, NULL); while(line[i] == ' ') @@ -550,6 +549,9 @@ int main(int argc UNUSED, char **argv UNUSED) case '-': sense = 0; break; + case 'a': + vterm_screen_enable_altscreen(screen, 1); + break; case 'd': want_screen_damage = sense; break; @@ -805,6 +807,25 @@ int main(int argc UNUSED, char **argv UNUSED) else printf("?\n"); } + else if(strstartswith(line, "?lineinfo ")) { + char *linep = line + 10; + int row; + const VTermLineInfo *info; + while(linep[0] == ' ') + linep++; + if(sscanf(linep, "%d", &row) < 1) { + printf("! lineinfo unrecognised input\n"); + goto abort_line; + } + info = vterm_state_get_lineinfo(state, row); + if(info->doublewidth) + printf("dwl "); + if(info->doubleheight) + printf("dhl "); + if(info->continuation) + printf("cont "); + printf("\n"); + } else if(strstartswith(line, "?screen_chars ")) { char *linep = line + 13; VTermRect rect; |