diff options
author | Jérémie Courrèges-Anglas <jca@wxcvbn.org> | 2016-11-23 02:15:47 +0100 |
---|---|---|
committer | Jérémie Courrèges-Anglas <jca@wxcvbn.org> | 2016-11-23 02:17:40 +0100 |
commit | 99edf8f266e52e61656d3be3337b5f8bfa4c2759 (patch) | |
tree | aa180a160b6d36bac5a0aa8043450b867c189a9f /src/actions.c | |
parent | 0026454736ec7fe765749a60d75338a8dcea4386 (diff) | |
download | ratpoison-99edf8f266e52e61656d3be3337b5f8bfa4c2759.zip |
Implement a "commands" command to dump all available... commands
Diffstat (limited to 'src/actions.c')
-rw-r--r-- | src/actions.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/actions.c b/src/actions.c index 0314b83..00f9fce 100644 --- a/src/actions.c +++ b/src/actions.c @@ -405,6 +405,7 @@ init_user_commands(void) add_command ("putsel", cmd_putsel, 1, 1, 1, "Text: ", arg_RAW); add_command ("getsel", cmd_getsel, 0, 0, 0); + add_command ("commands", cmd_commands, 0, 0, 0); /*@end (tag required for genrpbindings) */ /* Commands to help debug ratpoison. */ @@ -6082,3 +6083,22 @@ cmd_getsel (int interactive UNUSED, struct cmdarg **args UNUSED) else return cmdret_new (RET_FAILURE, "getsel: no X11 selection"); } + +cmdret * +cmd_commands (int interactive UNUSED, struct cmdarg **args UNUSED) +{ + struct sbuf *sb; + struct user_command *cur; + cmdret *ret; + + sb = sbuf_new (0); + list_for_each_entry (cur, &user_commands, node) + { + sbuf_printf_concat (sb, "%s\n", cur->name); + } + sbuf_chop (sb); + + ret = cmdret_new (RET_SUCCESS, "%s", sbuf_get (sb)); + sbuf_free (sb); + return ret; +} |