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:
nicm
2014-10-20 22:29:25 +00:00
parent f0b69c7711
commit 45dfc5a074
68 changed files with 86 additions and 403 deletions

View File

@ -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)
{