com=`basename $0`
files=$*
+ROFF=groff
+ROFF_FLAGS="-C -man -Tps"
+CSPLIT=
+
+IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}:"
+for i in $PATH; do
+ if [ -f $i/gcsplit ]; then
+ CSPLIT=$i/gcsplit
+ break
+ fi
+ if [ -f $i/csplit ]; then
+ CSPLIT=$i/csplit
+ break
+ fi
+done
+IFS="$save_ifs"
if [ "$files" = "" ]; then
echo "\aUsage: $com file [file2 ...]"
for file in $files
do
filename=`basename $file | awk -F. '{print $1}'`
- troff -C -man -Tps $filename | grops -g > $filename.ps
+ eval $ROFF $ROFF_FLAGS $file > $filename.ps
pages=`grep '%%Pages\:' $filename.ps | awk '{print $2}'`
- pp=$(($pages - 1))
+ pp=`expr $pages - 1`
echo $filename': '$pages' pages'
- if [ -e csplit ]; then
- csplit -k $filename.ps /Page:/ \{$pp\}
+ if [ "$CSPLIT"x != x ]; then
+ $CSPLIT -k $filename.ps /Page:/ \{$pp\} > /dev/null
counter=0
for number in `ls xx*`
do
cat xx00 > $filename$counter.ps
- echo '.7 dup scale' >> $filename$counter.ps
+ echo '0.85 dup scale' >> $filename$counter.ps
cat $number >> $filename$counter.ps
if [ $counter != $pages ];
then
echo 'end' >> $filename$counter.ps
echo '%%EOF' >> $filename$counter.ps
fi
- counter=$(($counter + 1))
+ counter=`expr $counter + 1`
done
rm $filename.ps $filename'0.ps' xx*