summaryrefslogtreecommitdiffstats
path: root/cmd-bind-key.c
diff options
context:
space:
mode:
authorNicholas Marriott <nicholas.marriott@gmail.com>2008-06-02 18:08:17 +0000
committerNicholas Marriott <nicholas.marriott@gmail.com>2008-06-02 18:08:17 +0000
commitc7243b73cb3baaf6993d8a9dfb16c054c3978040 (patch)
tree1d67ee4c5cf764dc83245c79d27da52857b4a89d /cmd-bind-key.c
parent11ee55e755af67dc9155e956b4569c8fdeb11848 (diff)
Move -s and -c down a level so handling them is the responsibility of the command (with some helper functions), rather than the top-level. This changes the action command syntax so that -s and -c must be after the command rather than before.
Diffstat (limited to 'cmd-bind-key.c')
-rw-r--r--cmd-bind-key.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/cmd-bind-key.c b/cmd-bind-key.c
index 537a12f5..cff6c445 100644
--- a/cmd-bind-key.c
+++ b/cmd-bind-key.c
@@ -1,4 +1,4 @@
-/* $Id: cmd-bind-key.c,v 1.8 2007-12-06 09:46:21 nicm Exp $ */
+/* $Id: cmd-bind-key.c,v 1.9 2008-06-02 18:08:16 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -26,7 +26,7 @@
* Bind a key to a command, this recurses through cmd_*.
*/
-int cmd_bind_key_parse(void **, int, char **, char **);
+int cmd_bind_key_parse(struct cmd *, void **, int, char **, char **);
void cmd_bind_key_exec(void *, struct cmd_ctx *);
void cmd_bind_key_send(void *, struct buffer *);
void cmd_bind_key_recv(void **, struct buffer *);
@@ -38,8 +38,9 @@ struct cmd_bind_key_data {
};
const struct cmd_entry cmd_bind_key_entry = {
- "bind-key", "bind", "key command [arguments]",
- CMD_NOCLIENT|CMD_NOSESSION,
+ "bind-key", "bind",
+ "key command [arguments]",
+ 0,
cmd_bind_key_parse,
cmd_bind_key_exec,
cmd_bind_key_send,
@@ -48,7 +49,8 @@ const struct cmd_entry cmd_bind_key_entry = {
};
int
-cmd_bind_key_parse(void **ptr, int argc, char **argv, char **cause)
+cmd_bind_key_parse(
+ struct cmd *self, void **ptr, int argc, char **argv, char **cause)
{
struct cmd_bind_key_data *data;
int opt;
@@ -80,8 +82,7 @@ cmd_bind_key_parse(void **ptr, int argc, char **argv, char **cause)
return (0);
usage:
- usage(cause, "%s %s",
- cmd_bind_key_entry.name, cmd_bind_key_entry.usage);
+ usage(cause, "%s %s", self->entry->name, self->entry->usage);
error:
cmd_bind_key_free(data);