47 lines
1.5 KiB
Text
Executable file
47 lines
1.5 KiB
Text
Executable file
#compdef figlet
|
|
|
|
typeset -A opt_args
|
|
local context state line
|
|
local fontdir
|
|
fontdir=$(_call_program path figlet -I2 2>/dev/null)
|
|
|
|
_arguments -s -S \
|
|
"(-l -c -r)-x[use default justification of font]" \
|
|
"(-x -c -r)-l[left justify]" \
|
|
"(-x -l -r)-c[center justify]" \
|
|
"(-x -l -c)-r[right justify]" \
|
|
"(-S -s -o -W -m)-k[use kerning]" \
|
|
"(-k -s -o -W -m)-S[smush letters together or else!]" \
|
|
"(-k -S -o -W -m)-s[smushed spacing]" \
|
|
"(-k -S -s -W -m)-o[let letters overlap]" \
|
|
"(-k -S -s -o -m)-W[wide spacing]" \
|
|
"(-p)-n[normal mode]" \
|
|
"(-n)-p[paragraph mode]" \
|
|
"(-E)-D[use Deutsch character set]" \
|
|
"(-D)-E[use English character set]" \
|
|
"(-X -R)-L[left-to-right]" \
|
|
"(-L -X)-R[right-to-left]" \
|
|
"(-L -R)-X[use default writing direction of font]" \
|
|
"(-w)-t[use terminal width]" \
|
|
"(-t)-w+[specify output width]:output width (in columns):" \
|
|
"(-k -S -s -o -W)-m+[specify layout mode]:layout mode:" \
|
|
"(-I)-v[version]" \
|
|
"(-v)-I+[display info]:info code:(-1 0 1 2 3 4)" \
|
|
"-d+[specify font directory]:font directory:_files -/" \
|
|
"-f+[specify font]:font:->fonts" \
|
|
"(-N)-C+[specify control file]:control file:->controls" \
|
|
"(-C)-N[clear controlfile list]" \
|
|
&& return 0
|
|
|
|
(( $+opt_args[-d] )) && fontdir=$opt_args[-d]
|
|
|
|
case $state in
|
|
(fonts)
|
|
_files -W $fontdir -g '*flf*(:r)' && return 0
|
|
;;
|
|
(controls)
|
|
_files -W $fontdir -g '*flc*(:r)' && return 0
|
|
;;
|
|
esac
|
|
|
|
return 1
|