From 92aef64c5a582cbd785e3d8ad0801153e129a5c7 Mon Sep 17 00:00:00 2001 From: Nicholas Marriott Date: Thu, 29 Dec 2011 08:06:24 +0000 Subject: [PATCH] Add CNL and CPL escape sequences. --- input.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/input.c b/input.c index ed1f8760..b113bc2a 100644 --- a/input.c +++ b/input.c @@ -119,6 +119,8 @@ const struct input_table_entry input_esc_table[] = { /* Control (CSI) commands. */ enum input_csi_type { INPUT_CSI_CBT, + INPUT_CSI_CNL, + INPUT_CSI_CPL, INPUT_CSI_CUB, INPUT_CSI_CUD, INPUT_CSI_CUF, @@ -153,6 +155,8 @@ const struct input_table_entry input_csi_table[] = { { 'B', "", INPUT_CSI_CUD }, { 'C', "", INPUT_CSI_CUF }, { 'D', "", INPUT_CSI_CUB }, + { 'E', "", INPUT_CSI_CNL }, + { 'F', "", INPUT_CSI_CPL }, { 'G', "", INPUT_CSI_HPA }, { 'H', "", INPUT_CSI_CUP }, { 'J', "", INPUT_CSI_ED }, @@ -1085,6 +1089,14 @@ input_csi_dispatch(struct input_ctx *ictx) case INPUT_CSI_CUU: screen_write_cursorup(sctx, input_get(ictx, 0, 1, 1)); break; + case INPUT_CSI_CNL: + screen_write_carriagereturn(sctx); + screen_write_cursordown(sctx, input_get(ictx, 0, 1, 1)); + break; + case INPUT_CSI_CPL: + screen_write_carriagereturn(sctx); + screen_write_cursorup(sctx, input_get(ictx, 0, 1, 1)); + break; case INPUT_CSI_DA: switch (input_get(ictx, 0, 0, 0)) { case 0: