about summary refs log tree commit diff
path: root/Completion/X
diff options
context:
space:
mode:
authorOliver Kiddle <opk@users.sourceforge.net>2005-05-10 12:28:51 +0000
committerOliver Kiddle <opk@users.sourceforge.net>2005-05-10 12:28:51 +0000
commit69a1e29b6e7e3f5b0993aaf0fd3562f689da8f9d (patch)
treec65e9e312de0dbb80e26f85709b821265ff64701 /Completion/X
parent040207b7d54480389ba7123c448d531da481c403 (diff)
downloadzsh-69a1e29b6e7e3f5b0993aaf0fd3562f689da8f9d.tar.gz
zsh-69a1e29b6e7e3f5b0993aaf0fd3562f689da8f9d.tar.xz
zsh-69a1e29b6e7e3f5b0993aaf0fd3562f689da8f9d.zip
Haakon Riiser: 21188: handle acroread 7.x
Diffstat (limited to 'Completion/X')
-rw-r--r--Completion/X/Command/_acroread94
1 files changed, 94 insertions, 0 deletions
diff --git a/Completion/X/Command/_acroread b/Completion/X/Command/_acroread
new file mode 100644
index 000000000..afcd3188c
--- /dev/null
+++ b/Completion/X/Command/_acroread
@@ -0,0 +1,94 @@
+#compdef acroread
+
+local curcontext="$curcontext" state line
+
+# Try extracting the version number directly from the executable.
+# (This will fail if the executable is a wrapper script for acroread.)
+local ver=${${${(f)"$(<$commands[$words[1]])"}:#^ver=*}##ver=}
+[[ -n $ver ]] && _acroread_version=$ver
+
+if (( ! $+_acroread_version )); then
+  local acropath=${${(s. .)${${(f)"$($words[1] -help 2>&1)"}[1]}}[2]}
+  _acroread_version=${${${(f)"$(<$acropath)"}:#^ver=*}##ver=}
+fi
+
+if [[ $_acroread_version == 7.* ]]; then
+  _arguments -C \
+    '--display=:X display:_x_display' \
+    '--screen=:X screen (overrides the screen part of DISPLAY)' \
+    --sync \
+    '-geometry:[<width>x<height>][{+|-}<x offset>{+|-}<y offset>]' \
+    -help \
+    -iconic \
+    '*-setenv:<var>=<value>' \
+    -tempFile \
+    '-tempFileTitle:title' \
+    -openInNewWindow \
+    -version \
+    '-visual:X visual:_x_visual' \
+    '-toPostScript:*::PostScript conversion options:= ->tops' \
+    '*:PDF file:_files -g "*.(#i)pdf(-.)"' && return
+
+  [[ -n "$state" ]] && _arguments \
+    '-pairs:*:pdf_file_1 ps_file_1 ...:_files -g "*.(#i)(pdf|ps)(-.)"' \
+    -binary \
+    '-start:integer' \
+    '-end:integer' \
+    -optimizeForSpeed \
+    -landscape \
+    -reverse \
+    '(-even)-odd' \
+    '(-odd)-even' \
+    -commentsOff \
+    -annotsOff \
+    '(-level3)-level2' \
+    '(-level2)-level3' \
+    -printerhalftones \
+    -saveVM \
+    '-scale:integer' \
+    -shrink \
+    -expand \
+    '-size:page size (or custom size wxh in points):(letter tabloid ledger legal executive a3 a4 a5 b4 b5)' \
+    '-transQuality:transparency flattening level:(1 2 3 4 5)' \
+    '*:PDF file:_files -g "*.(#i)pdf(-.)"' && return
+else
+  _x_arguments -C \
+    -help \
+    -helpall \
+    \*-iconic \
+    \*+iconic \
+    '-name:application name:_x_name' \
+    '*-setenv:<var>=<value>' \
+    -tempFile \
+    '-tempFileTitle:title' \
+    '(+useFrontEndProgram)-useFrontEndProgram' \
+    '(-useFrontEndProgram)+useFrontEndProgram' \
+    '-visual:X visual:_x_visual' \
+    '-xrm:X resource specification:_x_resource' \
+    '-toPostScript:*::PostScript conversion options:= ->tops' \
+    '*:PDF file:_files -g "*.(#i)pdf(-.)"' && return
+
+  [[ -n "$state" ]] && _arguments \
+    '-pairs:*:pdf_file_1 ps_file_1 ...:_files -g "*.(#i)(pdf|ps)(-.)"' \
+    -binary \
+    '-start:integer' \
+    '-end:integer' \
+    -optimizeForSpeed \
+    -landscape \
+    -reverse \
+    '(-even)-odd' \
+    '(-odd)-even' \
+    -commentsOff \
+    '(-level2 -level3)-level1' \
+    '(-level1 -level3)-level2' \
+    '(-level1 -level2)-level3' \
+    -printerhalftones \
+    -saveVM \
+    '-scale:integer' \
+    -shrink \
+    '-size:page size (or custom size wxh in points):(letter tabloid ledger legal executive a3 a4 a5 b4 b5)' \
+    '-transQuality:transparency flattening level:(1 2 3 4 5)' \
+    '*:PDF file:_files -g "*.(#i)pdf(-.)"' && return
+fi
+
+return 1