1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-01-09 19:51:26 +01:00
zsh/Completion/X/Command/_pdftk
Peter Stephenson e72999c092 gi1242+zsh@gmail.com: 28594:
Various new and improved completions
2011-01-09 16:57:01 +00:00

63 lines
1.3 KiB
Text

#compdef pdftk
_pdfwithhandle()
{
compset -P '(#I)[A-Z]='
_files "$@" -g '(#i)*.pdf'
}
local expl
local -a opts operations
opts=(output encrypt_40bit encrypt_128bit allow owner_pw user_pw flatten
compress uncompress keep_first_id keep_final_id drop_xfa verbose
dont_ask do_ask)
operations=(cat attach_files unpack_files burst fill_form background stamp
generate_fdf multibackground multistamp dump_data dump_data_fields
update_info)
case $words[CURRENT-1] in
((input|owner|user)_pw)
_message "password, or PROMPT"
;;
(allow)
#_description permissions expl "permission"
#compadd $expl \
_values -s , permissions \
Printing DegradedPrinting ModifyContents Assembly CopyContents \
ScreenReaders ModifyAnnotations FillIn AllFeatures
;;
(attach_files)
_files "$@"
;;
(fill_form)
_description files expl 'FDF and XFDF files'
_files "$@" $expl -g '(#i)*.(fdf|xfdf)'
;;
((multibackground|background|stamp|multistamp|output))
_description files expl 'PDF files'
_files "$@" $expl -g '(#i)*.pdf'
;;
(update_info)
_files
;;
(*)
false
;;
esac && return 0
if [[ -n $words[(r)(${(j:|:)operations})] ]]; then
_description options expl "options"
compadd $@ $expl $opts
else
_tags files operations
_alternative \
'files:PDF files:_pdfwithhandle' \
"operations:operations:($operations)"
fi