lib/Tools/display
changeset 15218 39747a9e3c37
parent 15010 72fbe711e414
child 15223 e669fb5b0f5a
equal deleted inserted replaced
15217:15fa818ef624 15218:39747a9e3c37
     1 #!/usr/bin/env bash
     1 #!/usr/bin/env bash
     2 #
     2 #
     3 # $Id$
     3 # $Id$
     4 # Author: Markus Wenzel, TU Muenchen
     4 # Author: Markus Wenzel, TU Muenchen
     5 #
     5 #
     6 # DESCRIPTION: display document (in DVI format)
     6 # DESCRIPTION: display document (in DVI or PDF format)
     7 
     7 
     8 
     8 
     9 PRG="$(basename "$0")"
     9 PRG="$(basename "$0")"
    10 
    10 
    11 function usage()
    11 function usage()
    14   echo "Usage: $PRG [OPTIONS] FILE"
    14   echo "Usage: $PRG [OPTIONS] FILE"
    15   echo
    15   echo
    16   echo "  Options are:"
    16   echo "  Options are:"
    17   echo "    -c           cleanup -- remove FILE after use"
    17   echo "    -c           cleanup -- remove FILE after use"
    18   echo
    18   echo
    19   echo "  Display document FILE (in DVI format)."
    19   echo "  Display document FILE (in DVI or PDF format)."
    20   echo
    20   echo
    21   exit 1
    21   exit 1
    22 }
    22 }
    23 
    23 
    24 function fail()
    24 function fail()
    25 {
    25 {
    26   echo "$1" >&2
    26   echo "$1" >&2
    27   exit 2
    27   exit 2
    28 }
    28 }
    29 
    29 
       
    30 
       
    31 function view()
       
    32 {
       
    33   if [ "${1%%.dvi}.dvi" == "$1" ]; then
       
    34     exec $DVI_VIEWER "$1"
       
    35     return
       
    36   fi
       
    37 
       
    38   if [ "${1%%.pdf}.pdf" == "$1" ]; then
       
    39     exec $PDF_VIEWER "$1"
       
    40     return
       
    41   fi
       
    42 
       
    43   fail "Unknown file type: $FILE";
       
    44 }
    30 
    45 
    31 ## process command line
    46 ## process command line
    32 
    47 
    33 # options
    48 # options
    34 
    49 
    59 ## main
    74 ## main
    60 
    75 
    61 [ -f "$FILE" ] || fail "Bad file: $FILE"
    76 [ -f "$FILE" ] || fail "Bad file: $FILE"
    62 
    77 
    63 if [ -n "$CLEAN" ]; then
    78 if [ -n "$CLEAN" ]; then
    64   PRIVATE_FILE="$ISABELLE_TMP/"$(basename "$FILE" .dvi)$$.dvi
    79   PRIVATE_FILE="$ISABELLE_TMP_PREFIX/"$$"$FILE"
    65   mv "$FILE" "$PRIVATE_FILE" || fail "Cannot move file: $FILE"
    80   mv "$FILE" "$PRIVATE_FILE" || fail "Cannot move file: $FILE"
    66   $DVI_VIEWER "$PRIVATE_FILE"
    81   view "$PRIVATE_FILE"
    67   rm -f "$PRIVATE_FILE"
    82   rm -f "$PRIVATE_FILE"
    68 else
    83 else
    69   exec $DVI_VIEWER "$FILE"
    84   view "$FILE"
    70 fi
    85 fi