about summary refs log tree commit diff
path: root/Completion/X/_x_font
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/X/_x_font')
-rw-r--r--Completion/X/_x_font13
1 files changed, 12 insertions, 1 deletions
diff --git a/Completion/X/_x_font b/Completion/X/_x_font
index e0acb4014..d4f16f33c 100644
--- a/Completion/X/_x_font
+++ b/Completion/X/_x_font
@@ -1,3 +1,14 @@
 #autoload
 
-_message 'font'
+local expl
+
+# This *has* to be improved some day...
+
+if (( ! $+_font_cache )); then
+  typeset -U _font_cache
+
+ _font_cache=( "${(@)^${(@f)$(xlsfonts)}%%--*}--" )
+fi
+
+_description expl font
+compgen -M 'r:|-=* r:|=*' "$expl[@]" "$@" -S '' -k _font_cache