summaryrefslogtreecommitdiffstats
path: root/tty-features.c
diff options
context:
space:
mode:
authornicm <nicm>2021-06-10 07:59:08 +0000
committernicm <nicm>2021-06-10 07:59:08 +0000
commit1e879ef458a21ea4dd266761757537fbbf567eee (patch)
tree62b457c823d7653ffc090ca856374e75a87a88db /tty-features.c
parent43514f4af612405c0dc07abfdee54bae0889989e (diff)
Feature for the mouse since FreeBSD termcap does not have kmous.
Diffstat (limited to 'tty-features.c')
-rw-r--r--tty-features.c17
1 files changed, 14 insertions, 3 deletions
diff --git a/tty-features.c b/tty-features.c
index b42cf74a..48ac51be 100644
--- a/tty-features.c
+++ b/tty-features.c
@@ -25,7 +25,6 @@
/*
* Still hardcoded:
- * - mouse (under kmous capability);
* - default colours (under AX or op capabilities);
* - AIX colours (under colors >= 16);
* - alternate escape (if terminal is VT100-like).
@@ -54,6 +53,17 @@ static const struct tty_feature tty_feature_title = {
0
};
+/* Terminal has mouse support. */
+static const char *tty_feature_mouse_capabilities[] = {
+ "kmous=\\E[M",
+ NULL
+};
+static const struct tty_feature tty_feature_mouse = {
+ "mouse",
+ tty_feature_mouse_capabilities,
+ 0
+};
+
/* Terminal can set the clipboard with OSC 52. */
static const char *tty_feature_clipboard_capabilities[] = {
"Ms=\\E]52;%p1%s;%p2%s\\a",
@@ -238,6 +248,7 @@ static const struct tty_feature *tty_features[] = {
&tty_feature_extkeys,
&tty_feature_focus,
&tty_feature_margins,
+ &tty_feature_mouse,
&tty_feature_overline,
&tty_feature_rectfill,
&tty_feature_rgb,
@@ -338,7 +349,7 @@ tty_default_features(int *feat, const char *name, u_int version)
const char *features;
} table[] = {
#define TTY_FEATURES_BASE_MODERN_XTERM \
- "256,RGB,bpaste,clipboard,strikethrough,title"
+ "256,RGB,bpaste,clipboard,mouse,strikethrough,title"
{ .name = "mintty",
.features = TTY_FEATURES_BASE_MODERN_XTERM
",ccolour,cstyle,extkeys,margins,overline,usstyle"
@@ -348,7 +359,7 @@ tty_default_features(int *feat, const char *name, u_int version)
",ccolour,cstyle,focus,overline,usstyle"
},
{ .name = "rxvt-unicode",
- .features = "256,bpaste,ccolour,cstyle,title"
+ .features = "256,bpaste,ccolour,cstyle,mouse,title"
},
{ .name = "iTerm2",
.features = TTY_FEATURES_BASE_MODERN_XTERM