From d5b80e05e8df29b989c072b6529745576056d0bc Mon Sep 17 00:00:00 2001
From: "Roberto E. Vargas Caballero" <k0ga@shike2.com>
Date: Thu, 8 Nov 2012 17:21:24 +0100
Subject: [PATCH] Fix VPR sequence

VPR stands for Move cursor down a number of rows, and the code was moving
the cursor up instead of moving it down.
---
 st.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
---
 st.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/st.c b/st.c
index 657fba7..f67a345 100644
--- a/st.c
+++ b/st.c
@@ -1562,11 +1562,11 @@ csihandle(void) {
 		tinsertblank(csiescseq.arg[0]);
 		break;
 	case 'A': /* CUU -- Cursor <n> Up */
-	case 'e':
 		DEFAULT(csiescseq.arg[0], 1);
 		tmoveto(term.c.x, term.c.y-csiescseq.arg[0]);
 		break;
 	case 'B': /* CUD -- Cursor <n> Down */
+	case 'e': /* VPR --Cursor <n> Down */
 		DEFAULT(csiescseq.arg[0], 1);
 		tmoveto(term.c.x, term.c.y+csiescseq.arg[0]);
 		break;
@@ -1575,7 +1575,7 @@ csihandle(void) {
 			ttywrite(VT102ID, sizeof(VT102ID) - 1);
 		break;
 	case 'C': /* CUF -- Cursor <n> Forward */
-	case 'a':
+	case 'a': /* HPR -- Cursor <n> Forward */
 		DEFAULT(csiescseq.arg[0], 1);
 		tmoveto(term.c.x+csiescseq.arg[0], term.c.y);
 		break;
-- 
2.20.1