aboutsummaryrefslogtreecommitdiff
path: root/tmux.h
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@openbsd.org>2009-09-22 12:38:10 +0000
committerNicholas Marriott <nicm@openbsd.org>2009-09-22 12:38:10 +0000
commit96dd3e8eb9bbe5393050acfd4ac7759ae27d00c8 (patch)
treee637c693907a716deeef38264004b9bcc6d24971 /tmux.h
parent6fab9a3e6f0a18ce63662fceedb87e96f2680d83 (diff)
downloadrtmux-96dd3e8eb9bbe5393050acfd4ac7759ae27d00c8.tar.gz
rtmux-96dd3e8eb9bbe5393050acfd4ac7759ae27d00c8.tar.bz2
rtmux-96dd3e8eb9bbe5393050acfd4ac7759ae27d00c8.zip
Permit multiple prefix keys to be defined, separated by commas, for example:
set -g prefix ^a,^b Any key in the list acts as the prefix. The send-prefix command always sends the first key in the list.
Diffstat (limited to 'tmux.h')
-rw-r--r--tmux.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/tmux.h b/tmux.h
index e8e35ba1..0ffb0b53 100644
--- a/tmux.h
+++ b/tmux.h
@@ -544,10 +544,14 @@ struct options_entry {
enum {
OPTIONS_STRING,
OPTIONS_NUMBER,
+ OPTIONS_DATA,
} type;
char *str;
long long num;
+ void *data;
+
+ void (*freefn)(void *);
SPLAY_ENTRY(options_entry) entry;
};
@@ -557,6 +561,9 @@ struct options {
struct options *parent;
};
+/* Key list for prefix option. */
+ARRAY_DECL(keylist, int);
+
/* Screen selection. */
struct screen_sel {
int flag;
@@ -1085,7 +1092,7 @@ struct set_option_entry {
enum {
SET_OPTION_STRING,
SET_OPTION_NUMBER,
- SET_OPTION_KEY,
+ SET_OPTION_KEYS,
SET_OPTION_COLOUR,
SET_OPTION_ATTRIBUTES,
SET_OPTION_FLAG,
@@ -1165,6 +1172,9 @@ char *options_get_string(struct options *, const char *);
struct options_entry *options_set_number(
struct options *, const char *, long long);
long long options_get_number(struct options *, const char *);
+struct options_entry *options_set_data(
+ struct options *, const char *, void *, void (*)(void *));
+void *options_get_data(struct options *, const char *);
/* environ.c */
int environ_cmp(struct environ_entry *, struct environ_entry *);
@@ -1245,7 +1255,7 @@ void set_option_string(struct cmd_ctx *,
struct options *, const struct set_option_entry *, char *, int);
void set_option_number(struct cmd_ctx *,
struct options *, const struct set_option_entry *, char *);
-void set_option_key(struct cmd_ctx *,
+void set_option_keys(struct cmd_ctx *,
struct options *, const struct set_option_entry *, char *);
void set_option_colour(struct cmd_ctx *,
struct options *, const struct set_option_entry *, char *);