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 : '(';