aboutsummaryrefslogtreecommitdiff
path: root/tmux.h
diff options
context:
space:
mode:
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 *);