diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | NEWS | 4 | ||||
-rw-r--r-- | src/actions.c | 10 | ||||
-rw-r--r-- | src/actions.h | 1 |
4 files changed, 14 insertions, 4 deletions
@@ -5,6 +5,9 @@ 2005-01-15 Shawn Betts <katia_dilkina@verizon.net> + * src/actions.c (command): treat arg_SHELLCMD like arg_REST. + (cmd_set): likewise + * src/globals.h (RET_SUCCESS): set to 1 (RET_FAILURE): set to 0 @@ -7,6 +7,10 @@ are permitted in any medium without royalty provided the copyright notice and this notice are preserved. * Changes since 1.3.0 +** New command undefinekey +not passing a 3rd argument to definekey and bind no longer unbind the +key. You must use undefinekey and unbind now. + ** ratpoison -c prints errors to stderr You can now capture errors and output seperately depending on whether its printed to stderr or stdout. diff --git a/src/actions.c b/src/actions.c index d708ef0..8d301c6 100644 --- a/src/actions.c +++ b/src/actions.c @@ -2275,9 +2275,10 @@ command (int interactive, char *data) INIT_LIST_HEAD (&args); INIT_LIST_HEAD (&head); - /* We need to tell parse_args about arg_REST. */ + /* We need to tell parse_args about arg_REST and arg_SHELLCMD. */ for (i=0; i<uc->num_args; i++) - if (uc->args[i].type == arg_REST) + if (uc->args[i].type == arg_REST + || uc->args[i].type == arg_SHELLCMD) { nargs = i; break; @@ -4702,9 +4703,10 @@ cmd_set (int interactive, struct cmdarg **args) INIT_LIST_HEAD (&arglist); INIT_LIST_HEAD (&head); - /* We need to tell parse_args about arg_REST. */ + /* We need to tell parse_args about arg_REST and arg_SHELLCMD. */ for (i=0; i<ARG(0,variable)->nargs; i++) - if (ARG(0,variable)->args[i].type == arg_REST) + if (ARG(0,variable)->args[i].type == arg_REST + || ARG(0,variable)->args[i].type == arg_SHELLCMD) { nargs = i; break; diff --git a/src/actions.h b/src/actions.h index 9b4ec6d..a9e06b2 100644 --- a/src/actions.h +++ b/src/actions.h @@ -29,6 +29,7 @@ typedef struct user_command user_command; +/* arg_REST and arg_SHELLCMD eat the rest of the input. */ enum argtype { arg_REST, arg_NUMBER, arg_STRING, arg_FRAME, arg_WINDOW, arg_COMMAND, arg_SHELLCMD, arg_KEYMAP, arg_KEY, arg_GRAVITY, arg_GROUP, |