summaryrefslogtreecommitdiff
path: root/src/libvterm/t/harness.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libvterm/t/harness.c')
-rw-r--r--src/libvterm/t/harness.c23
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;