lib/Tools/update_cartouches
author wenzelm
Tue, 20 Oct 2015 23:03:46 +0200
changeset 61492 3480725c71d2
parent 58610 fffdbce036db
child 61579 634cd44bb1d3
permissions -rwxr-xr-x
added isabelle update_cartouches option -t;
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
58610
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
     1
#!/usr/bin/env bash
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
     2
#
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
     3
# Author: Makarius
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
     4
#
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
     5
# DESCRIPTION: update theory syntax to use cartouches
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
     6
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
     7
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
     8
## diagnostics
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
     9
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    10
PRG="$(basename "$0")"
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    11
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    12
function usage()
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    13
{
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    14
  echo
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    15
  echo "Usage: isabelle $PRG [FILES|DIRS...]"
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    16
  echo
61492
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    17
  echo "  Options are:"
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    18
  echo "    -t           replace @{text} antiquotations within text tokens"
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    19
  echo
58610
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    20
  echo "  Recursively find .thy files and update theory syntax to use cartouches"
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    21
  echo "  instead of old-style {* verbatim *} or \`alt_string\` tokens."
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    22
  echo
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    23
  echo "  Old versions of files are preserved by appending \"~~\"."
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    24
  echo
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    25
  exit 1
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    26
}
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    27
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    28
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    29
## process command line
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    30
61492
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    31
# options
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    32
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    33
TEXT="false"
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    34
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    35
while getopts "t" OPT
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    36
do
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    37
  case "$OPT" in
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    38
    t)
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    39
      TEXT="true"
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    40
      ;;
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    41
    \?)
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    42
      usage
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    43
      ;;
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    44
  esac
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    45
done
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    46
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    47
shift $(($OPTIND - 1))
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    48
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    49
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    50
# args
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    51
58610
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    52
[ "$#" -eq 0 -o "$1" = "-?" ] && usage
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    53
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    54
SPECS="$@"; shift "$#"
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    55
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    56
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    57
## main
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    58
fffdbce036db added update_cartouches tool;
wenzelm
parents:
diff changeset
    59
find $SPECS -name \*.thy -print0 | \
61492
3480725c71d2 added isabelle update_cartouches option -t;
wenzelm
parents: 58610
diff changeset
    60
  xargs -0 "$ISABELLE_TOOL" java isabelle.Update_Cartouches "$TEXT"