Feature for the mouse since FreeBSD termcap does not have kmous.

This commit is contained in:
Nicholas Marriott 2021-06-08 10:49:40 +01:00
parent f48c46a76a
commit d8feffd2bf
2 changed files with 18 additions and 3 deletions

4
tmux.1
View File

@ -3539,6 +3539,10 @@ Supports extended keys.
Supports focus reporting.
.It margins
Supports DECSLRM margins.
.It mouse
Supports
.Xr xterm 1
mouse sequences.
.It overline
Supports the overline SGR attribute.
.It rectfill

View File

@ -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