summaryrefslogtreecommitdiffstats
path: root/input.c
diff options
context:
space:
mode:
authorTiago Cunha <tcunha@gmx.com>2011-12-30 14:21:40 +0000
committerTiago Cunha <tcunha@gmx.com>2011-12-30 14:21:40 +0000
commit90b331ea4666c33d11ef4b1107d30ab4be141a1b (patch)
tree6947cbeba574b1d9f71cb5da34ceca654958d946 /input.c
parente2d59a6c1713cdb18f0a96ad9da9eac11fa60d88 (diff)
Sync OpenBSD patchset 994:
Add CNL and CPL escape sequences.
Diffstat (limited to 'input.c')
-rw-r--r--input.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/input.c b/input.c
index e5bb448e..17307e97 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: