tmore fun with macs - plan9port - [fork] Plan 9 from user space
(HTM) git clone git://src.adamsgaard.dk/plan9port
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
(DIR) LICENSE
---
(DIR) commit acb19305872582d8faeb178962ed940f511ca0ae
(DIR) parent 5645c4afff3bfd3f1a92d01a4d31b25c6e5b9d89
(HTM) Author: rsc <devnull@localhost>
Date: Tue, 11 Jan 2005 19:35:27 +0000
more fun with macs
Diffstat:
M bin/page | 81 ++++++++++++++++++++++++-------
1 file changed, 63 insertions(+), 18 deletions(-)
---
(DIR) diff --git a/bin/page b/bin/page
t@@ -1,5 +1,7 @@
#!/bin/sh
+# BUG - Should clean up $tmp but how to know when viewer is done?
+
preview()
{
list=""
t@@ -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