mirror of
				https://github.com/tmux/tmux.git
				synced 2025-11-04 00:56:10 +00:00 
			
		
		
		
	Instead of setting up the default keys by building the key struct
directly with a helper function in the cmd_entry, include a table of bind-key commands and pass them through the command parser and a temporary cmd_q. As well as being smaller, this will allow default bindings to be command sequences which will probably be needed soon.
This commit is contained in:
		@@ -24,7 +24,6 @@
 | 
			
		||||
 * Select pane.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
void		 cmd_select_pane_key_binding(struct cmd *, int);
 | 
			
		||||
enum cmd_retval	 cmd_select_pane_exec(struct cmd *, struct cmd_q *);
 | 
			
		||||
 | 
			
		||||
const struct cmd_entry cmd_select_pane_entry = {
 | 
			
		||||
@@ -32,7 +31,6 @@ const struct cmd_entry cmd_select_pane_entry = {
 | 
			
		||||
	"DdeLlRt:U", 0, 0,
 | 
			
		||||
	"[-DdeLlRU] " CMD_TARGET_PANE_USAGE,
 | 
			
		||||
	0,
 | 
			
		||||
	cmd_select_pane_key_binding,
 | 
			
		||||
	cmd_select_pane_exec
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
@@ -41,26 +39,9 @@ const struct cmd_entry cmd_last_pane_entry = {
 | 
			
		||||
	"det:", 0, 0,
 | 
			
		||||
	"[-de] " CMD_TARGET_WINDOW_USAGE,
 | 
			
		||||
	0,
 | 
			
		||||
	NULL,
 | 
			
		||||
	cmd_select_pane_exec
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
void
 | 
			
		||||
cmd_select_pane_key_binding(struct cmd *self, int key)
 | 
			
		||||
{
 | 
			
		||||
	self->args = args_create(0);
 | 
			
		||||
	if (key == KEYC_UP)
 | 
			
		||||
		args_set(self->args, 'U', NULL);
 | 
			
		||||
	if (key == KEYC_DOWN)
 | 
			
		||||
		args_set(self->args, 'D', NULL);
 | 
			
		||||
	if (key == KEYC_LEFT)
 | 
			
		||||
		args_set(self->args, 'L', NULL);
 | 
			
		||||
	if (key == KEYC_RIGHT)
 | 
			
		||||
		args_set(self->args, 'R', NULL);
 | 
			
		||||
	if (key == 'o')
 | 
			
		||||
		args_set(self->args, 't', ":.+");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
enum cmd_retval
 | 
			
		||||
cmd_select_pane_exec(struct cmd *self, struct cmd_q *cmdq)
 | 
			
		||||
{
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user