summaryrefslogtreecommitdiffstats
path: root/input.c
diff options
context:
space:
mode:
authornicm <nicm>2019-11-15 11:16:53 +0000
committernicm <nicm>2019-11-15 11:16:53 +0000
commitf3dc38dcae472286c7d7c2708e4dbfe70a6c2d57 (patch)
tree7a2013bf4c2df1a44c234386f4eaaf5c4123351a /input.c
parent1f966c495ca021858fdba00f6619d024ecbc41d4 (diff)
Handle OSC 7 (a VTE extension) and put the result in a new format (pane_path).
Diffstat (limited to 'input.c')
-rw-r--r--input.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/input.c b/input.c
index cec46a99..d2c1b8a6 100644
--- a/input.c
+++ b/input.c
@@ -132,6 +132,7 @@ static void input_set_state(struct window_pane *,
static void input_reset_cell(struct input_ctx *);
static void input_osc_4(struct input_ctx *, const char *);
+static void input_osc_7(struct input_ctx *, const char *);
static void input_osc_10(struct input_ctx *, const char *);
static void input_osc_11(struct input_ctx *, const char *);
static void input_osc_52(struct input_ctx *, const char *);
@@ -2211,6 +2212,12 @@ input_exit_osc(struct input_ctx *ictx)
case 4:
input_osc_4(ictx, p);
break;
+ case 7:
+ if (utf8_isvalid(p)) {
+ screen_set_path(sctx->s, p);
+ server_status_window(ictx->wp->window);
+ }
+ break;
case 10:
input_osc_10(ictx, p);
break;