about summary refs log tree commit diff
path: root/Completion/X/_xmodmap
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/X/_xmodmap')
-rw-r--r--Completion/X/_xmodmap10
1 files changed, 6 insertions, 4 deletions
diff --git a/Completion/X/_xmodmap b/Completion/X/_xmodmap
index 4e7a8bfc8..d8ba420ce 100644
--- a/Completion/X/_xmodmap
+++ b/Completion/X/_xmodmap
@@ -1,6 +1,6 @@
 #compdef xmodmap
 
-local state line ret=1
+local context state line ret=1
 typeset -A opt_args
 
 _x_arguments \
@@ -82,9 +82,11 @@ if [[ -n "$state" ]]; then
     [[ "$what" = *ksym* ]] && _x_keysym "$suf[@]" && ret=0
 
   else
-    _description expl command
-    compadd "$expl[@]" -S ' ' keycode keysym clear add remove && ret=0
-    compadd "$expl[@]" -S ' = ' pointer && ret=0
+    if _tags any commands; then
+      _description expl command
+      compadd "$expl[@]" -S ' ' keycode keysym clear add remove && ret=0
+      compadd "$expl[@]" -S ' = ' pointer && ret=0
+    fi
   fi
 fi