lib/scripts/isa-emacs
author wenzelm
Thu, 17 Apr 1997 10:30:57 +0200
changeset 2968 8ba30b031f31
parent 2947 abca00c27841
child 3007 e5efa177ee0c
permissions -rwxr-xr-x
eliminated PLATFORM;

#!/bin/bash -norc
#
# $Id$
#
# GNU Emacs Isamode interface.


## diagnostics

PRG=$(basename $0)

function usage()
{
  echo
  echo "Usage: $PRG [OPTIONS]"
  echo
  echo "  Options are:"
  echo "    -g GEOM      main window geometry (default 80x20)"
  echo
  echo "  Starts GNU Emacs and Isamode."
  echo
  exit 1
}

function fail()
{
  echo "$1" >&2
  exit 2
}


## process command line

# options

MAINGEOM="80x20"

while getopts "g:" OPT
do
  case "$OPT" in
    g)
      MAINGEOM="$OPTARG"
      ;;
    \?)
      usage
      ;;
  esac
done

shift $(($OPTIND - 1))


# args

[ $# != 0 ] && usage


## main

# prepare startup file

STARTUP=/tmp/isa-start$$.el

{
  echo "(load \"$ISAMODE_HOME/elisp/isa-site.el\")"
  echo

  echo "(setq isa-logic-paths"
  echo -n "'("
  for DIR in $(echo $ISABELLE_PATH | tr : " ")
  do
    [ -d $DIR ] && echo "\"$DIR\""
  done
  echo "\"$ISAMODE_HOME/ruletables\"))"
  echo

  DOC=$(echo $ISABELLE_DOCS | cut -f1 -d:)       #first doc dir only
  echo "(setq isa-manual-path \"$DOC\")"
  echo

  for FILE in "$ISABELLE_HOME/etc/isa-settings.el" \
    "$ISABELLE_HOME_USER/etc/isa-settings.el"
  do
    [ -f "$FILE" ] && echo "(load \"$FILE\")"
  done
  echo

  echo "(isabelle)"
} >$STARTUP


# run it!

$ISATOOL installfonts

emacs -name "Isabelle" \
  -fn isabelle14 -geometry $MAINGEOM \
  --no-init-file \
  --load $STARTUP

rm $STARTUP