From e72999c092b80b71c5913a52c411a1c7529971f4 Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Sun, 9 Jan 2011 16:57:01 +0000 Subject: gi1242+zsh@gmail.com: 28594: Various new and improved completions --- Completion/X/Command/_pdftk | 63 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 Completion/X/Command/_pdftk (limited to 'Completion/X/Command/_pdftk') diff --git a/Completion/X/Command/_pdftk b/Completion/X/Command/_pdftk new file mode 100644 index 000000000..b8c43f754 --- /dev/null +++ b/Completion/X/Command/_pdftk @@ -0,0 +1,63 @@ +#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 -- cgit 1.4.1