forked from Isabelle_DOF/Isabelle_DOF
mkroot_DOF is not replaced by dof_mkroot, which is implemented in Scala.
This commit is contained in:
parent
ef674b5ae2
commit
59658cea6f
|
@ -1,150 +0,0 @@
|
|||
#/usr/bin/env bash
|
||||
# Copyright (c) 2019 University of Exeter
|
||||
# 2018-2019 University of Paris-Saclay
|
||||
# 2018-2019 The University of Sheffield
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions
|
||||
# are met:
|
||||
# 1. Redistributions of source code must retain the above copyright
|
||||
# notice, this list of conditions and the following disclaimer.
|
||||
# 2. Redistributions in binary form must reproduce the above copyright
|
||||
# notice, this list of conditions and the following disclaimer in
|
||||
# the documentation and/or other materials provided with the
|
||||
# distribution.
|
||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
# POSSIBILITY OF SUCH DAMAGE.
|
||||
#
|
||||
# SPDX-License-Identifier: BSD-2-Clause
|
||||
#
|
||||
# DESCRIPTION: prepare session root directory with DOF setup
|
||||
|
||||
## diagnostics
|
||||
|
||||
PRG="$(basename "$0")"
|
||||
|
||||
function usage()
|
||||
{
|
||||
echo
|
||||
echo "Usage: isabelle $PRG [OPTIONS] [DIR]"
|
||||
echo
|
||||
echo " Options are:"
|
||||
echo " -h print this help text and exit"
|
||||
echo " -n NAME alternative session name (default: DIR base name)"
|
||||
echo " -o ONTOLOGY (default: $DEFAULT_ONTOLOGY)"
|
||||
echo " Available ontologies:"
|
||||
for t in "$ISABELLE_DOF_HOME/src/ontologies"/*/*.sty; do
|
||||
if [[ $t =~ DOF-(.*).sty$ ]]; then
|
||||
echo " * ${BASH_REMATCH[1]}"
|
||||
fi
|
||||
done
|
||||
echo " -t TEMPLATE (default: $DEFAULT_TEMPLATE)"
|
||||
echo " Available document templates:"
|
||||
for t in "$ISABELLE_DOF_HOME/src/document-templates/"*.tex; do
|
||||
if [[ $t =~ root-(.*).tex$ ]]; then
|
||||
echo " * ${BASH_REMATCH[1]}"
|
||||
fi
|
||||
done
|
||||
echo
|
||||
echo " Prepare session root DIR (default: current directory)."
|
||||
echo
|
||||
exit 1
|
||||
}
|
||||
|
||||
function fail()
|
||||
{
|
||||
echo "$1" >&2
|
||||
exit 2
|
||||
}
|
||||
|
||||
|
||||
## process command line
|
||||
|
||||
# options
|
||||
|
||||
NAME=""
|
||||
DEFAULT_TEMPLATE="scrartcl"
|
||||
DEFAULT_ONTOLOGY="scholarly_paper"
|
||||
|
||||
TEMPLATE="$DEFAULT_TEMPLATE"
|
||||
ONTOLOGY=""
|
||||
|
||||
while getopts "t:o:n:dh" OPT
|
||||
do
|
||||
case "$OPT" in
|
||||
h)
|
||||
usage
|
||||
exit 1
|
||||
;;
|
||||
n)
|
||||
NAME="$OPTARG"
|
||||
;;
|
||||
o)
|
||||
if [ ! -f "$ISABELLE_DOF_HOME/src/ontologies"/*/DOF-$OPTARG.sty ]; then
|
||||
echo "ERROR: Ontology $OPTARG not available!"
|
||||
exit 1
|
||||
fi
|
||||
ONTOLOGY="$ONTOLOGY $OPTARG"
|
||||
;;
|
||||
t)
|
||||
TEMPLATE="$OPTARG"
|
||||
if [ ! -f "$ISABELLE_DOF_HOME/src/document-templates/root-$TEMPLATE.tex" ]; then
|
||||
echo "ERROR: Template $TEMPLATE not available!"
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
\?)
|
||||
usage
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
shift $(($OPTIND - 1))
|
||||
|
||||
ONTOLOGY="${ONTOLOGY:-$DEFAULT_ONTOLOGY}"
|
||||
|
||||
# args
|
||||
|
||||
if [ "$#" -eq 0 ]; then
|
||||
DIR="."
|
||||
elif [ "$#" -eq 1 ]; then
|
||||
DIR="$1"
|
||||
shift
|
||||
else
|
||||
usage
|
||||
fi
|
||||
|
||||
if [ -z "$NAME" ]; then
|
||||
NAME="$DIR"
|
||||
fi
|
||||
|
||||
$ISABELLE_TOOL mkroot -n "$NAME" "$DIR"
|
||||
echo " \"preamble.tex\"" >> "$DIR"/ROOT
|
||||
sed -i -e "s/root.tex/isadof.cfg/" "$DIR"/ROOT
|
||||
sed -i -e "s/HOL/Isabelle_DOF/" "$DIR"/ROOT
|
||||
sed -i -e "s/\"output\"\]/\"output\", document_build = dof\]/" "$DIR"/ROOT
|
||||
rm -f "$DIR"/document/root.tex
|
||||
|
||||
# Creating isadof.cfg
|
||||
echo "Template: $TEMPLATE" > "$DIR"/document/isadof.cfg
|
||||
for o in $ONTOLOGY; do
|
||||
echo "Ontology: $o" >> "$DIR"/document/isadof.cfg;
|
||||
done
|
||||
|
||||
# Creating praemble.tex
|
||||
TITLE=$(echo "$NAME" | tr _ - | tr -d '\\')
|
||||
AUTHOR=$(echo "By $USER" | tr _ - | tr -d '\\')
|
||||
echo "%% This is a placeholder for user-specific configuration and packages." >> "$DIR"/document/preamble.tex
|
||||
echo "\\title{$TITLE}{}{}{}{}{}{}" >> "$DIR"/document/preamble.tex
|
||||
echo "\\author{$AUTHOR}{}{}{}{}{}" >> "$DIR"/document/preamble.tex
|
Reference in New Issue