version 1.901, 2019/05/20 13:23:32 |
version 1.902, 2019/05/23 11:13:30 |
|
|
|
|
/* Command and list of commands. */ |
/* Command and list of commands. */ |
struct cmd { |
struct cmd { |
const struct cmd_entry *entry; |
const struct cmd_entry *entry; |
struct args *args; |
struct args *args; |
|
u_int group; |
|
|
char *file; |
char *file; |
u_int line; |
u_int line; |
|
|
TAILQ_ENTRY(cmd) qentry; |
char *alias; |
|
int argc; |
|
char **argv; |
|
|
|
TAILQ_ENTRY(cmd) qentry; |
}; |
}; |
|
TAILQ_HEAD(cmds, cmd); |
|
|
struct cmd_list { |
struct cmd_list { |
int references; |
int references; |
TAILQ_HEAD(, cmd) list; |
u_int group; |
|
struct cmds list; |
}; |
}; |
|
|
/* Command return values. */ |
/* Command return values. */ |
|
|
CMD_RETURN_STOP |
CMD_RETURN_STOP |
}; |
}; |
|
|
|
/* Command parse result. */ |
|
enum cmd_parse_status { |
|
CMD_PARSE_EMPTY, |
|
CMD_PARSE_ERROR, |
|
CMD_PARSE_SUCCESS |
|
}; |
|
struct cmd_parse_result { |
|
enum cmd_parse_status status; |
|
struct cmd_list *cmdlist; |
|
char *error; |
|
}; |
|
struct cmd_parse_input { |
|
int flags; |
|
#define CMD_PARSE_QUIET 0x1 |
|
#define CMD_PARSE_PARSEONLY 0x2 |
|
#define CMD_PARSE_NOALIAS 0x4 |
|
|
|
const char *file; |
|
u_int line; |
|
|
|
struct cmdq_item *item; |
|
struct client *c; |
|
struct cmd_find_state fs; |
|
}; |
|
|
/* Command queue item type. */ |
/* Command queue item type. */ |
enum cmdq_type { |
enum cmdq_type { |
CMDQ_COMMAND, |
CMDQ_COMMAND, |
|
|
/* cfg.c */ |
/* cfg.c */ |
extern int cfg_finished; |
extern int cfg_finished; |
extern struct client *cfg_client; |
extern struct client *cfg_client; |
#define CFG_QUIET 0x1 |
|
void start_cfg(void); |
void start_cfg(void); |
int load_cfg(const char *, struct client *, struct cmdq_item *, int, |
int load_cfg(const char *, struct client *, struct cmdq_item *, int, |
struct cmdq_item **); |
struct cmdq_item **); |
|
|
|
|
/* cmd.c */ |
/* cmd.c */ |
void cmd_log_argv(int, char **, const char *); |
void cmd_log_argv(int, char **, const char *); |
|
void cmd_prepend_argv(int *, char ***, char *); |
|
void cmd_append_argv(int *, char ***, char *); |
int cmd_pack_argv(int, char **, char *, size_t); |
int cmd_pack_argv(int, char **, char *, size_t); |
int cmd_unpack_argv(char *, size_t, int, char ***); |
int cmd_unpack_argv(char *, size_t, int, char ***); |
char **cmd_copy_argv(int, char **); |
char **cmd_copy_argv(int, char **); |
void cmd_free_argv(int, char **); |
void cmd_free_argv(int, char **); |
char *cmd_stringify_argv(int, char **); |
char *cmd_stringify_argv(int, char **); |
|
char *cmd_get_alias(const char *); |
struct cmd *cmd_parse(int, char **, const char *, u_int, char **); |
struct cmd *cmd_parse(int, char **, const char *, u_int, char **); |
|
void cmd_free(struct cmd *); |
char *cmd_print(struct cmd *); |
char *cmd_print(struct cmd *); |
int cmd_mouse_at(struct window_pane *, struct mouse_event *, |
int cmd_mouse_at(struct window_pane *, struct mouse_event *, |
u_int *, u_int *, int); |
u_int *, u_int *, int); |
|
|
enum cmd_retval cmd_attach_session(struct cmdq_item *, const char *, int, int, |
enum cmd_retval cmd_attach_session(struct cmdq_item *, const char *, int, int, |
const char *, int); |
const char *, int); |
|
|
|
/* cmd-parse.c */ |
|
void cmd_parse_empty(struct cmd_parse_input *); |
|
struct cmd_parse_result *cmd_parse_from_file(FILE *, struct cmd_parse_input *); |
|
struct cmd_parse_result *cmd_parse_from_string(const char *, |
|
struct cmd_parse_input *); |
|
|
/* cmd-list.c */ |
/* cmd-list.c */ |
|
struct cmd_list *cmd_list_new(void); |
|
void cmd_list_append(struct cmd_list *, struct cmd *); |
|
void cmd_list_move(struct cmd_list *, struct cmd_list *); |
struct cmd_list *cmd_list_parse(int, char **, const char *, u_int, char **); |
struct cmd_list *cmd_list_parse(int, char **, const char *, u_int, char **); |
void cmd_list_free(struct cmd_list *); |
void cmd_list_free(struct cmd_list *); |
char *cmd_list_print(struct cmd_list *); |
char *cmd_list_print(struct cmd_list *); |
|
|
void cmdq_guard(struct cmdq_item *, const char *, int); |
void cmdq_guard(struct cmdq_item *, const char *, int); |
void printflike(2, 3) cmdq_print(struct cmdq_item *, const char *, ...); |
void printflike(2, 3) cmdq_print(struct cmdq_item *, const char *, ...); |
void printflike(2, 3) cmdq_error(struct cmdq_item *, const char *, ...); |
void printflike(2, 3) cmdq_error(struct cmdq_item *, const char *, ...); |
|
|
/* cmd-string.c */ |
|
int cmd_string_split(const char *, int *, char ***); |
|
struct cmd_list *cmd_string_parse(const char *, const char *, u_int, char **); |
|
|
|
/* cmd-wait-for.c */ |
/* cmd-wait-for.c */ |
void cmd_wait_for_flush(void); |
void cmd_wait_for_flush(void); |