1
0
mirror of git://git.code.sf.net/p/zsh/code synced 2024-10-02 08:51:18 +02:00
zsh/Completion/Unix/Command/_a2ps
2005-03-01 11:57:48 +00:00

65 lines
2.7 KiB
Plaintext

#compdef a2ps
# This is for the GNU version of a2ps.
if [[ "$words[1]" != "$_cache_a2ps_cmd" ]]; then
local descr
_cache_a2ps_cmd="$words[1]"
descr=( "${(@)${(f@)$(_call_program features LC_ALL=C $words[1] --list=features)//
/ }:#}" )
_cache_a2ps_values=(
"${descr[(r)Known [Ss]tyle [Ss]heets*]#* }"
"${descr[(r)Known [Ee]ncodings*]#* }"
"${descr[(r)Known [Mm]edia*]#* }"
"${descr[(r)Known [Pp]rologues*]#* }"
"${descr[(r)Known PostScript Printer Descriptions*]#* }"
"${descr[(r)Known [Oo]utputs*]#* }"
"${descr[(r)Known [Uu]ser [Oo]ptions*]#* }"
"${descr[(r)Known Variables*]#* }"
)
fi
integer ret=1
local context state line expl
typeset -A opt_args
_arguments \
'(-E --pretty-print=)'{-E-,--pretty-print=}"[enable pretty-printing]::language:(${_cache_a2ps_values[1]})" \
\*{-D+,--define=}"[set or unset variable]:variable:(${_cache_a2ps_values[8]})" \
'(-d -P --printer)'{-P,--printer=}"[send output to printer]:printer:->printers" \
'(-A --file-align)'{-A,--file-align=}'[specify alignment of separate files]:mode:(virtual rank page sheet)' \
'(-a --pages)'{-a-,--pages=}'[select pages to print]:page range' \
'(-q --quiet --silent -v --verbose)'{-q,--quiet,--silent}'[quiet output]' \
'(-q --quiet --silent -v --verbose)'{-v-,--verbose=}'[verbose output]:level' \
'(-b --header)'{-b-,--header=}'[set the page header]:text' \
'(-g)--highlight-level=:highlight:(none normal heavy)' \
'--list=:topic:(features delegations encodings media prologues printers style-sheets user-options variables)' \
"--user-option=:user option:(${_cache_a2ps_values[7]})" \
{-M,--medium=}":medium:(${_cache_a2ps_values[3]})" \
"--ppd=::printer description:(${_cache_a2ps_values[5]})" \
'--statusdict=:statusdict definition' \
'--setpagedevice=:page device definition' \
'--margin=:margin size (PostScript points)' \
'--toc=:format' \
--{{center,left,right}-title.underlay,{,left-,right-}footer}'=:text' \
'*:input file:_files' -- \
'*\*:toggle:(yes no)' \
'*=DIRECTION:direction:(rows columns)' \
'*=TYPE:type:((r\:CR mac\:CR unix\:LF n\:LF nr\:LFCR rn\:CRLF pc\:CRLF any auto))' \
'--version-control*:version control:(none off t numbered nil existing never simple)' \
'--strip-level*:strip level:((0\:everything\ is\ printed 1\:regular\ comments\ are\ not\ printed 2\:strong\ comments\ are\ not\ printed 3\:no\ comment\ is\ printed))' \
'--sides=*:mode:(simplex duplex tumble)' \
'--non-printable-format*:format:(caret space question-mark octal hexa emacs)' \
"--encoding*:encoding:(${_cache_a2ps_values[2]})" \
"--prologue*::prologue:(${_cache_a2ps_values[4]})" && ret=0
if [[ $state = printers ]]; then
_wanted printers expl printer compadd -- ${=_cache_a2ps_values[6]} && ret=0
_printers && ret=0
fi
return ret