Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

PATCH: _enable _disable: Workaround special characters in alias and function names breaking _arguments syntax



While looking at these I realized that an alias ( would break the
completion, this fixes that.

---
 Completion/Zsh/Command/_disable | 12 +++++++++---
 Completion/Zsh/Command/_enable  | 12 +++++++++---
 2 files changed, 18 insertions(+), 6 deletions(-)

diff --git a/Completion/Zsh/Command/_disable b/Completion/Zsh/Command/_disable
index 68be75f..52b82a6 100644
--- a/Completion/Zsh/Command/_disable
+++ b/Completion/Zsh/Command/_disable
@@ -1,10 +1,16 @@
 #compdef disable
 
+local -a ali_arr sali_arr func_arr
+
+ali_arr=(${(k)aliases} ${(k)galiases})
+sali_arr=(${(k)saliases})
+func_arr=(${(k)functions})
+
 _arguments -C -s -A "-*" -S \
-  "(-f -r -s -p)-a[act on regular or global aliases]:*:regular or global aliases:(${(k)aliases} ${(k)galiases})" \
-  "(-a -r -s -p)-f[act on functions]:*:functions:(${(k)functions})" \
+  "(-f -r -s -p)-a[act on regular or global aliases]:*:regular or global aliases:compadd -k ali_arr" \
+  "(-a -r -s -p)-f[act on functions]:*:functions:compadd -k func_arr" \
   "(-a -f -s -p)-r[act on reserved words]:*:reserved-words:compadd -k reswords" \
-  "(-a -f -r -p)-s[act on suffix aliases]:*:suffix aliases:(${(k)saliases})" \
+  "(-a -f -r -p)-s[act on suffix aliases]:*:suffix aliases:compadd -k sali_arr" \
   "(-a -f -r -s)-p[act on pattern characters]:*:pattern characters:compadd -k patchars" \
   '-m[treat arguments as patterns]' \
   "*:builtin command:(${(k)builtins})"
diff --git a/Completion/Zsh/Command/_enable b/Completion/Zsh/Command/_enable
index f773782..9410651 100644
--- a/Completion/Zsh/Command/_enable
+++ b/Completion/Zsh/Command/_enable
@@ -1,10 +1,16 @@
 #compdef enable
 
+local -a ali_arr sali_arr func_arr
+
+ali_arr=(${(k)dis_aliases} ${(k)dis_galiases})
+sali_arr=(${(k)dis_saliases})
+func_arr=(${(k)dis_functions})
+
 _arguments -C -s -A "-*" -S \
-  "(-f -r -s -p)-a[act on regular or global aliases]:*:aliases:(${(k)dis_aliases} ${(k)dis_galiases})" \
-  "(-a -r -s -p)-f[act on functions]:*:functions:(${(k)dis_functions})" \
+  "(-f -r -s -p)-a[act on regular or global aliases]:*:aliases:compadd -k ali_arr" \
+  "(-a -r -s -p)-f[act on functions]:*:functions:compadd -k func_arr" \
   "(-a -f -s -p)-r[act on reserved words]:*:reserved-words:compadd -k dis_reswords" \
-  "(-a -f -r -p)-s[act on suffix aliases]:*:suffix aliases:(${(k)dis_saliases})" \
+  "(-a -f -r -p)-s[act on suffix aliases]:*:suffix aliases:compadd -k sali_arr" \
   "(-a -f -r -s)-p[act on pattern characters]:*:pattern characters:compadd -k dis_patchars" \
   '-m[treat arguments as patterns]' \
   "*:builtin command:(${(k)dis_builtins})"
-- 
1.8.2-rc3



Messages sorted by: Reverse Date, Date, Thread, Author