summaryrefslogtreecommitdiff
path: root/usr.bin/tmux/cmd-list-keys.c
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@cvs.openbsd.org>2014-10-20 22:44:31 +0000
committerNicholas Marriott <nicm@cvs.openbsd.org>2014-10-20 22:44:31 +0000
commitf712f2418bdcadbb8ede11c2c584f394792d5e15 (patch)
tree304e3a0f55b87ca9c14a70a8bdc7960f4f080b2a /usr.bin/tmux/cmd-list-keys.c
parent2ac1a48ed9bc329df70cf19370326fda35be88fd (diff)
Move list-commands into list-keys.
Diffstat (limited to 'usr.bin/tmux/cmd-list-keys.c')
-rw-r--r--usr.bin/tmux/cmd-list-keys.c34
1 files changed, 33 insertions, 1 deletions
diff --git a/usr.bin/tmux/cmd-list-keys.c b/usr.bin/tmux/cmd-list-keys.c
index 39f7dbdfeed..282549f430d 100644
--- a/usr.bin/tmux/cmd-list-keys.c
+++ b/usr.bin/tmux/cmd-list-keys.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-list-keys.c,v 1.23 2014/10/20 22:29:25 nicm Exp $ */
+/* $OpenBSD: cmd-list-keys.c,v 1.24 2014/10/20 22:44:30 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -27,7 +27,9 @@
*/
enum cmd_retval cmd_list_keys_exec(struct cmd *, struct cmd_q *);
+
enum cmd_retval cmd_list_keys_table(struct cmd *, struct cmd_q *);
+enum cmd_retval cmd_list_keys_commands(struct cmd *, struct cmd_q *);
const struct cmd_entry cmd_list_keys_entry = {
"list-keys", "lsk",
@@ -37,6 +39,14 @@ const struct cmd_entry cmd_list_keys_entry = {
cmd_list_keys_exec
};
+const struct cmd_entry cmd_list_commands_entry = {
+ "list-commands", "lscm",
+ "", 0, 0,
+ "",
+ 0,
+ cmd_list_keys_exec
+};
+
enum cmd_retval
cmd_list_keys_exec(struct cmd *self, struct cmd_q *cmdq)
{
@@ -47,6 +57,9 @@ cmd_list_keys_exec(struct cmd *self, struct cmd_q *cmdq)
size_t used;
int width, keywidth;
+ if (self->entry == &cmd_list_commands_entry)
+ return (cmd_list_keys_commands(self, cmdq));
+
if (args_has(args, 't'))
return (cmd_list_keys_table(self, cmdq));
@@ -147,3 +160,22 @@ cmd_list_keys_table(struct cmd *self, struct cmd_q *cmdq)
return (CMD_RETURN_NORMAL);
}
+
+enum cmd_retval
+cmd_list_keys_commands(unused struct cmd *self, struct cmd_q *cmdq)
+{
+ const struct cmd_entry **entryp;
+ struct cmd_entry *entry;
+
+ for (entryp = cmd_table; *entryp != NULL; entryp++) {
+ entry = *entryp;
+ if (entry->alias == NULL) {
+ cmdq_print(cmdq, "%s %s", entry->name, entry->usage);
+ continue;
+ }
+ cmdq_print(cmdq, "%s (%s) %s", entry->name, entry->alias,
+ entry->usage);
+ }
+
+ return (CMD_RETURN_NORMAL);
+}