summary refs log tree commit diff
path: root/Src/Zle
diff options
context:
space:
mode:
authorSven Wischnowsky <wischnow@users.sourceforge.net>2000-05-03 14:44:01 +0000
committerSven Wischnowsky <wischnow@users.sourceforge.net>2000-05-03 14:44:01 +0000
commitaa0381bd2b64ad6ea1e24110c1c2ec6773f9288e (patch)
treef9b2e23776f0510c2cb771bb882d5731b0a3b289 /Src/Zle
parent17e79c01575b26e28e5f978d99cff250a6d9e63b (diff)
downloadzsh-aa0381bd2b64ad6ea1e24110c1c2ec6773f9288e.tar.gz
zsh-aa0381bd2b64ad6ea1e24110c1c2ec6773f9288e.tar.xz
zsh-aa0381bd2b64ad6ea1e24110c1c2ec6773f9288e.zip
allow `-' in exclusion lists for _arguments, to avoid completing all options (11121)
Diffstat (limited to 'Src/Zle')
-rw-r--r--Src/Zle/computil.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/Src/Zle/computil.c b/Src/Zle/computil.c
index 1846bc62f..77887a03e 100644
--- a/Src/Zle/computil.c
+++ b/Src/Zle/computil.c
@@ -1040,7 +1040,12 @@ ca_inactive(Cadef d, char **xor, int cur)
 	    }
 	    if (x[0] == ':' && !x[1])
 		d->argsactive = 0;
-	    else if (x[0] == '*' && !x[1]) {
+	    else if (x[0] == '-' && !x[1]) {
+		Caopt p;
+
+		for (p = d->opts; p; p = p->next)
+		    p->active = 0;
+	    } else if (x[0] == '*' && !x[1]) {
 		if (d->rest)
 		    d->rest->active = 0;
 	    } else if (x[0] >= '0' && x[0] <= '9') {