aboutsummaryrefslogtreecommitdiff
path: root/input.c
diff options
context:
space:
mode:
authornicm <nicm>2020-05-16 14:16:25 +0000
committernicm <nicm>2020-05-16 14:16:25 +0000
commit9dd58470e41bfb5b9d74028eed73f502e71152f0 (patch)
tree059f11d5a79e7bc9f0d3c954725a96206608e92b /input.c
parent471f697423df33d535a7cc1fac5f01f718969e34 (diff)
downloadrtmux-9dd58470e41bfb5b9d74028eed73f502e71152f0.tar.gz
rtmux-9dd58470e41bfb5b9d74028eed73f502e71152f0.tar.bz2
rtmux-9dd58470e41bfb5b9d74028eed73f502e71152f0.zip
Remove support for iTerm2's DSR 1337 extension and use the CSI > q
extension now supported by a few different terminals.
Diffstat (limited to 'input.c')
-rw-r--r--input.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/input.c b/input.c
index 919cf15d..b62b1858 100644
--- a/input.c
+++ b/input.c
@@ -254,6 +254,7 @@ enum input_csi_type {
INPUT_CSI_TBC,
INPUT_CSI_VPA,
INPUT_CSI_WINOPS,
+ INPUT_CSI_XDA,
};
/* Control (CSI) command table. */
@@ -290,6 +291,7 @@ static const struct input_table_entry input_csi_table[] = {
{ 'm', "", INPUT_CSI_SGR },
{ 'n', "", INPUT_CSI_DSR },
{ 'q', " ", INPUT_CSI_DECSCUSR },
+ { 'q', ">", INPUT_CSI_XDA },
{ 'r', "", INPUT_CSI_DECSTBM },
{ 's', "", INPUT_CSI_SCP },
{ 't', "", INPUT_CSI_WINOPS },
@@ -1324,7 +1326,6 @@ input_csi_dispatch(struct input_ctx *ictx)
struct input_table_entry *entry;
int i, n, m;
u_int cx, bg = ictx->cell.cell.bg;
- char *copy, *cp;
if (ictx->flags & INPUT_DISCARD)
return (0);
@@ -1456,13 +1457,6 @@ input_csi_dispatch(struct input_ctx *ictx)
case 6:
input_reply(ictx, "\033[%u;%uR", s->cy + 1, s->cx + 1);
break;
- case 1337: /* Terminal version, from iTerm2. */
- copy = xstrdup(getversion());
- for (cp = copy; *cp != '\0'; cp++)
- *cp = toupper((u_char)*cp);
- input_reply(ictx, "\033[TMUX %sn", copy);
- free(copy);
- break;
default:
log_debug("%s: unknown '%c'", __func__, ictx->ch);
break;
@@ -1597,6 +1591,12 @@ input_csi_dispatch(struct input_ctx *ictx)
if (n != -1)
screen_set_cursor_style(s, n);
break;
+ case INPUT_CSI_XDA:
+ n = input_get(ictx, 0, 0, 0);
+ if (n != 0)
+ input_reply(ictx, "\033P>|tmux %s\033\\", getversion());
+ break;
+
}
ictx->last = -1;