#!/usr/bin/env bash
declare -a ARGS=("${@}")
-ARG1=$1
# this whole next part is because there's no readlink -f in Darwin
function readlinkf() {
GUI=0
HELP=0
DEBUG=0
-for ARG in "${@}"; do
+for RAWARG in "${@}"; do
+ ARG="${RAWARG%%=*}"
case "${ARG}" in
- "--headless")
+ --headless|--output|--image|--structureimage)
HEADLESS=1
;;
- "--help")
+ --help|--help-*|--version|-h)
HELP=1
;;
- --help-*)
- HELP=1
- ;;
- "--gui")
+ --gui)
GUI=1
;;
- "--debug")
+ --debug)
DEBUG=1
;;
esac
fi
if [ "${HEADLESS}" = 1 ]; then
- # this suppresses the Java icon appearing in the macOS Dock and maybe other things in other OSes
- JVMARGS=( "${JVMARGS[@]}" "-Djava.awt.headless=true" )
+ # not setting java.awt.headless in java invocation of running jalview due to problem with Jmol
+ if [ "${HELP}" = 1 ]; then
+ JVMARGS=( "${JVMARGS[@]}" "-Djava.awt.headless=true" )
+ fi
+ # this suppresses the Java icon appearing in the macOS Dock
+ if [ "${ISMACOS}" = 1 ]; then
+ JVMARGS=( "${JVMARGS[@]}" "-Dapple.awt.UIElement=true" )
+ fi
fi
SYSJAVA=java
echo "Cannot find bundled java, using system ${JAVA} and hoping for the best!" >&2
fi
+function quotearray() {
+ QUOTEDVALS=""
+ for VAL in "${@}"; do
+ if [ \! "$QUOTEDVALS" = "" ]; then
+ QUOTEDVALS="${QUOTEDVALS} "
+ fi
+ QUOTEDVALS="${QUOTEDVALS}\"${VAL}\""
+ done
+ echo $QUOTEDVALS
+}
+
+JVMARGSSTR=$(quotearray "${JVMARGS[@]}")
+ARGSSTR=$(quotearray "${ARGS[@]}")
+
if [ "${DEBUG}" = 1 ]; then
- echo Shell running: \""${JAVA}"\" \""${JVMARGS[@]}"\" -cp \""${CLASSPATH}"\" jalview.bin.Launcher "${ARGS[@]}"
+ echo Shell running: \""${JAVA}"\" ${JVMARGSSTR} -cp \""${CLASSPATH}"\" jalview.bin.Launcher ${ARGSSTR}
fi
"${JAVA}" "${JVMARGS[@]}" -cp "${CLASSPATH}" jalview.bin.Launcher "${ARGS[@]}"