about summary refs log tree commit diff
path: root/Completion/X/_x_extension
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/X/_x_extension')
-rw-r--r--Completion/X/_x_extension17
1 files changed, 17 insertions, 0 deletions
diff --git a/Completion/X/_x_extension b/Completion/X/_x_extension
new file mode 100644
index 000000000..967938e28
--- /dev/null
+++ b/Completion/X/_x_extension
@@ -0,0 +1,17 @@
+#autoload
+
+local expl
+
+(( $+_xe_cache )) || _xe_cache=( "${(@)${(@f)$(xdpyinfo)}[(r)number of extensions:*,-1][2,(r)default screen number:*][1,-2]//[      ]}" )
+
+_description expl 'X extension'
+
+if [[ "$1" = -a ]]; then
+  shift
+
+  compadd "$@" "$expl[@]" -M 'm:{a-z}={A-Z} r:|-=* r:|=*' - all "$_xe_cache[@]"
+else
+  [[ "$1" = - ]] && shift
+
+  compadd "$@" "$expl[@]" -M 'm:{a-z}={A-Z} r:|-=* r:|=*' - "$_xe_cache[@]"
+fi