mirror of
				https://github.com/tmux/tmux.git
				synced 2025-11-04 00:56:10 +00:00 
			
		
		
		
	Support command sequences separated by " ; ". Also clean up command printing.
This commit is contained in:
		
							
								
								
									
										35
									
								
								tmux.h
									
									
									
									
									
								
							
							
						
						
									
										35
									
								
								tmux.h
									
									
									
									
									
								
							@@ -1,4 +1,4 @@
 | 
			
		||||
/* $Id: tmux.h,v 1.237 2009-01-18 12:09:42 nicm Exp $ */
 | 
			
		||||
/* $Id: tmux.h,v 1.238 2009-01-18 14:40:48 nicm Exp $ */
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
 | 
			
		||||
@@ -19,7 +19,7 @@
 | 
			
		||||
#ifndef TMUX_H
 | 
			
		||||
#define TMUX_H
 | 
			
		||||
 | 
			
		||||
#define PROTOCOL_VERSION -8
 | 
			
		||||
#define PROTOCOL_VERSION -9
 | 
			
		||||
 | 
			
		||||
/* Shut up gcc warnings about empty if bodies. */
 | 
			
		||||
#define RB_AUGMENT(x) do {} while (0)
 | 
			
		||||
@@ -807,7 +807,10 @@ struct cmd_ctx {
 | 
			
		||||
struct cmd {
 | 
			
		||||
	const struct cmd_entry *entry;
 | 
			
		||||
	void	       	*data;
 | 
			
		||||
 | 
			
		||||
	TAILQ_ENTRY(cmd) qentry;
 | 
			
		||||
};
 | 
			
		||||
TAILQ_HEAD(cmd_list, cmd);
 | 
			
		||||
 | 
			
		||||
struct cmd_entry {
 | 
			
		||||
	const char	*name;
 | 
			
		||||
@@ -832,7 +835,7 @@ struct cmd_entry {
 | 
			
		||||
	void		 (*send)(struct cmd *, struct buffer *);
 | 
			
		||||
	void	         (*recv)(struct cmd *, struct buffer *);
 | 
			
		||||
	void		 (*free)(struct cmd *);
 | 
			
		||||
	void 		 (*print)(struct cmd *, char *, size_t);
 | 
			
		||||
	size_t 		 (*print)(struct cmd *, char *, size_t);
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* Generic command data. */
 | 
			
		||||
@@ -873,7 +876,7 @@ struct cmd_pane_data {
 | 
			
		||||
/* Key binding. */
 | 
			
		||||
struct key_binding {
 | 
			
		||||
	int		 key;
 | 
			
		||||
	struct cmd	*cmd;
 | 
			
		||||
	struct cmd_list	*cmdlist;
 | 
			
		||||
 | 
			
		||||
	SPLAY_ENTRY(key_binding) entry;
 | 
			
		||||
};
 | 
			
		||||
@@ -1080,6 +1083,7 @@ void		 cmd_exec(struct cmd *, struct cmd_ctx *);
 | 
			
		||||
void		 cmd_send(struct cmd *, struct buffer *);
 | 
			
		||||
struct cmd	*cmd_recv(struct buffer *);
 | 
			
		||||
void		 cmd_free(struct cmd *);
 | 
			
		||||
size_t		 cmd_print(struct cmd *, char *, size_t);
 | 
			
		||||
void		 cmd_send_string(struct buffer *, const char *);
 | 
			
		||||
char		*cmd_recv_string(struct buffer *);
 | 
			
		||||
struct session	*cmd_current_session(struct cmd_ctx *);
 | 
			
		||||
@@ -1149,10 +1153,19 @@ extern const struct cmd_entry cmd_unbind_key_entry;
 | 
			
		||||
extern const struct cmd_entry cmd_unlink_window_entry;
 | 
			
		||||
extern const struct cmd_entry cmd_up_pane_entry;
 | 
			
		||||
 | 
			
		||||
/* cmd-list.c */
 | 
			
		||||
struct cmd_list	*cmd_list_parse(int, char **, char **);
 | 
			
		||||
void		 cmd_list_exec(struct cmd_list *, struct cmd_ctx *);
 | 
			
		||||
void		 cmd_list_send(struct cmd_list *, struct buffer *);
 | 
			
		||||
struct cmd_list	*cmd_list_recv(struct buffer *);
 | 
			
		||||
void		 cmd_list_free(struct cmd_list *);
 | 
			
		||||
size_t		 cmd_list_print(struct cmd_list *, char *, size_t);
 | 
			
		||||
 | 
			
		||||
/* cmd-string.c */
 | 
			
		||||
int	cmd_string_parse(const char *, struct cmd **, char **);
 | 
			
		||||
int	cmd_string_parse(const char *, struct cmd_list **, char **);
 | 
			
		||||
 | 
			
		||||
/* cmd-generic.c */
 | 
			
		||||
size_t  cmd_prarg(char *, size_t, const char *, char *);
 | 
			
		||||
#define CMD_TARGET_WINDOW_USAGE "[-t target-window]"
 | 
			
		||||
#define CMD_TARGET_SESSION_USAGE "[-t target-session]"
 | 
			
		||||
#define CMD_TARGET_CLIENT_USAGE "[-t target-client]"
 | 
			
		||||
@@ -1162,7 +1175,7 @@ void	cmd_target_exec(struct cmd *, struct cmd_ctx *);
 | 
			
		||||
void	cmd_target_send(struct cmd *, struct buffer *);
 | 
			
		||||
void	cmd_target_recv(struct cmd *, struct buffer *);
 | 
			
		||||
void	cmd_target_free(struct cmd *);
 | 
			
		||||
void	cmd_target_print(struct cmd *, char *, size_t);
 | 
			
		||||
size_t	cmd_target_print(struct cmd *, char *, size_t);
 | 
			
		||||
#define CMD_SRCDST_WINDOW_USAGE "[-s src-window] [-t dst-window]"
 | 
			
		||||
#define CMD_SRCDST_SESSION_USAGE "[-s src-session] [-t dst-session]"
 | 
			
		||||
#define CMD_SRCDST_CLIENT_USAGE "[-s src-client] [-t dst-client]"
 | 
			
		||||
@@ -1172,7 +1185,7 @@ void	cmd_srcdst_exec(struct cmd *, struct cmd_ctx *);
 | 
			
		||||
void	cmd_srcdst_send(struct cmd *, struct buffer *);
 | 
			
		||||
void	cmd_srcdst_recv(struct cmd *, struct buffer *);
 | 
			
		||||
void	cmd_srcdst_free(struct cmd *);
 | 
			
		||||
void	cmd_srcdst_print(struct cmd *, char *, size_t);
 | 
			
		||||
size_t	cmd_srcdst_print(struct cmd *, char *, size_t);
 | 
			
		||||
#define CMD_BUFFER_WINDOW_USAGE "[-b buffer-index] [-t target-window]"
 | 
			
		||||
#define CMD_BUFFER_SESSION_USAGE "[-b buffer-index] [-t target-session]"
 | 
			
		||||
#define CMD_BUFFER_CLIENT_USAGE "[-b buffer-index] [-t target-client]"
 | 
			
		||||
@@ -1182,7 +1195,7 @@ void	cmd_buffer_exec(struct cmd *, struct cmd_ctx *);
 | 
			
		||||
void	cmd_buffer_send(struct cmd *, struct buffer *);
 | 
			
		||||
void	cmd_buffer_recv(struct cmd *, struct buffer *);
 | 
			
		||||
void	cmd_buffer_free(struct cmd *);
 | 
			
		||||
void	cmd_buffer_print(struct cmd *, char *, size_t);
 | 
			
		||||
size_t	cmd_buffer_print(struct cmd *, char *, size_t);
 | 
			
		||||
#define CMD_OPTION_WINDOW_USAGE "[-gu] [-t target-window] option [value]"
 | 
			
		||||
#define CMD_OPTION_SESSION_USAGE "[-gu] [-t target-session] option [value]"
 | 
			
		||||
#define CMD_OPTION_CLIENT_USAGE "[-gu] [-t target-client] option [value]"
 | 
			
		||||
@@ -1192,7 +1205,7 @@ void	cmd_option_exec(struct cmd *, struct cmd_ctx *);
 | 
			
		||||
void	cmd_option_send(struct cmd *, struct buffer *);
 | 
			
		||||
void	cmd_option_recv(struct cmd *, struct buffer *);
 | 
			
		||||
void	cmd_option_free(struct cmd *);
 | 
			
		||||
void	cmd_option_print(struct cmd *, char *, size_t);
 | 
			
		||||
size_t	cmd_option_print(struct cmd *, char *, size_t);
 | 
			
		||||
#define CMD_PANE_WINDOW_USAGE "[-t target-window] [-p pane-index]"
 | 
			
		||||
#define CMD_PANE_SESSION_USAGE "[-t target-session] [-p pane-index]"
 | 
			
		||||
#define CMD_PANE_CLIENT_USAGE "[-t target-client] [-p pane-index]"
 | 
			
		||||
@@ -1202,7 +1215,7 @@ void	cmd_pane_exec(struct cmd *, struct cmd_ctx *);
 | 
			
		||||
void	cmd_pane_send(struct cmd *, struct buffer *);
 | 
			
		||||
void	cmd_pane_recv(struct cmd *, struct buffer *);
 | 
			
		||||
void	cmd_pane_free(struct cmd *);
 | 
			
		||||
void	cmd_pane_print(struct cmd *, char *, size_t);
 | 
			
		||||
size_t	cmd_pane_print(struct cmd *, char *, size_t);
 | 
			
		||||
 | 
			
		||||
/* client.c */
 | 
			
		||||
int	 client_init(const char *, struct client_ctx *, int, int);
 | 
			
		||||
@@ -1223,7 +1236,7 @@ extern struct key_bindings key_bindings;
 | 
			
		||||
int	 key_bindings_cmp(struct key_binding *, struct key_binding *);
 | 
			
		||||
SPLAY_PROTOTYPE(key_bindings, key_binding, entry, key_bindings_cmp);
 | 
			
		||||
struct key_binding *key_bindings_lookup(int);
 | 
			
		||||
void	 key_bindings_add(int, struct cmd *);
 | 
			
		||||
void	 key_bindings_add(int, struct cmd_list *);
 | 
			
		||||
void	 key_bindings_remove(int);
 | 
			
		||||
void	 key_bindings_init(void);
 | 
			
		||||
void	 key_bindings_free(void);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user