diff options
author | rsc <devnull@localhost> | 2005-01-11 19:35:27 +0000 |
---|---|---|
committer | rsc <devnull@localhost> | 2005-01-11 19:35:27 +0000 |
commit | acb19305872582d8faeb178962ed940f511ca0ae (patch) | |
tree | be6d5737d04476687288927499133833b188b204 /bin | |
parent | 5645c4afff3bfd3f1a92d01a4d31b25c6e5b9d89 (diff) | |
download | plan9port-acb19305872582d8faeb178962ed940f511ca0ae.tar.gz plan9port-acb19305872582d8faeb178962ed940f511ca0ae.tar.bz2 plan9port-acb19305872582d8faeb178962ed940f511ca0ae.zip |
more fun with macs
Diffstat (limited to 'bin')
-rwxr-xr-x | bin/page | 81 |
1 files changed, 63 insertions, 18 deletions
@@ -1,5 +1,7 @@ #!/bin/sh +# BUG - Should clean up $tmp but how to know when viewer is done? + preview() { list="" @@ -20,34 +22,77 @@ preview() end tell' | osascript } +main() +{ + case `uname` in + Darwin) + preview "$@" + ;; + *) + case "`file $1`" in + *PDF*) + psv $1 + ;; + *PS*) + psv $1 + ;; + *PostScript*) + psv $1 + ;; + *) + qiv "$@" + ;; + esac + ;; + esac +} + case $# in 0) - cat >/var/tmp/page.$$.tmp - *="/var/tmp/page.$$.tmp" - ;; -*) - ;; -esac - -case `uname` in -Darwin) - preview "$@" - ;; -*) - case "`file $1`" in + tmp=/var/tmp/page.$$.tmp + cat >$tmp + case "`file $tmp`" in *PDF*) - psv $1 + mv $tmp $tmp.pdf + tmp=$tmp.pdf ;; *PS*) - psv $1 + mv $tmp $tmp.ps + tmp=$tmp.ps ;; *PostScript*) - psv $1 + mv $tmp $tmp.ps + tmp=$tmp.ps ;; - *) - qiv "$@" + *GIF*) + mv $tmp $tmp.gif + tmp=$tmp.gif + ;; + *JPG*) + mv $tmp $tmp.jpg + tmp=$tmp.jpg ;; + *JPEG*) + mv $tmp $tmp.jpg + tmp=$tmp.jpg + ;; + *PNG*) + mv $tmp $tmp.png + tmp=$tmp.png + ;; + *) + echo 1>&2 unrecognized file format + rm -f $tmp + exit 1 esac + main $tmp + if [ `uname` != Darwin ] + then + rm -f $tmp + fi + ;; +*) + main "$@" ;; esac |