From 28eef937426c39084ae9f6598231cc5b28be5d9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Wed, 17 Jul 2019 10:39:38 +0200 Subject: [PATCH] vt/csi: recognize the reset sequence sent by 'reset' However, we don't (yet) actually reset the terminal --- csi.c | 24 ++++++++++++++++++++++++ vt.c | 4 ++++ 2 files changed, 28 insertions(+) diff --git a/csi.c b/csi.c index ca3fd945..9f89ccd2 100644 --- a/csi.c +++ b/csi.c @@ -740,6 +740,16 @@ csi_dispatch(struct terminal *term, uint8_t final) term->cursor_keys_mode = CURSOR_KEYS_NORMAL; break; + case 3: + LOG_WARN("unimplemented: 132 column mode (DECCOLM, %s)", + csi_as_string(term, final)); + break; + + case 4: + LOG_WARN("unimplemented: Smooth (Slow) Scroll (DECSCLM, %s)", + csi_as_string(term, final)); + break; + case 5: term->reverse = false; term_damage_all(term); @@ -897,6 +907,20 @@ csi_dispatch(struct terminal *term, uint8_t final) break; /* private == ' ' */ } + case '!': { + switch (final) { + case 'p': + LOG_WARN("unimplemented: soft reset"); + break; + + default: + LOG_ERR("unimplemented: %s", csi_as_string(term, final)); + abort(); + break; + } + break; /* private == '!' */ + } + default: LOG_ERR("unimplemented: %s", csi_as_string(term, final)); abort(); diff --git a/vt.c b/vt.c index 92caea3f..90f6980f 100644 --- a/vt.c +++ b/vt.c @@ -598,6 +598,10 @@ esc_dispatch(struct terminal *term, uint8_t final) term->vt.attrs = term->vt.saved_attrs; break; + case 'c': + LOG_WARN("unimplemented: reset to initial state"); + break; + case 'B': { /* Configure G0-G3 to use ASCII */ char param = term->vt.private != 0 ? term->vt.private : '(';