about summary refs log tree commit diff
path: root/Completion/Builtins/_zle
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Builtins/_zle')
-rw-r--r--Completion/Builtins/_zle11
1 files changed, 7 insertions, 4 deletions
diff --git a/Completion/Builtins/_zle b/Completion/Builtins/_zle
index bb1102e74..e390382d4 100644
--- a/Completion/Builtins/_zle
+++ b/Completion/Builtins/_zle
@@ -1,7 +1,10 @@
-#defcomp zle
+#compdef zle
 
-if [[ -word 1 -N && -position 3 ]]; then
-  complist -F
+local expl
+
+if [[ "$words[2]" = -N && CURRENT -eq 3 ]]; then
+  _wanted -C -N functions expl 'widget shell function' \
+      compadd "$@" -k functions
 else
-  complist -b
+  _wanted widgets expl widget compadd -k widgets
 fi