###############################
declare -a ARGS=("${@}")
-ARG1=$1
# this function is because there's no readlink -f in Darwin/macOS
function readlinkf() {
--headless|--output|--image|--structureimage)
HEADLESS=1
;;
- --help|--help-*|--version)
+ --help|--help-*|--version|-h)
HELP=1
;;
--gui)
if [ "${ISMACOS}" = 1 ]; then
# MACOS ONLY
DIR="$(dirname "$(readlinkf "$0")")"
- JVMARGS=( "${JVMARGS[@]}" "-Xdock:icon=${DIR}/jalview_logo.png" )
+ if [ -e "${DIR}/jalview_logo.png" ]; then
+ JVMARGS=( "${JVMARGS[@]}" "-Xdock:icon=${DIR}/jalview_logo.png" )
+ fi
else
# NOT MACOS
DIR="$(dirname "$(readlink -f "$0")")"
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
JAVA=java
fi
JVMARGS=( "${JVMARGS[@]}" "-DCONSOLEWIDTH=${COLUMNS}" )
+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[@]}" -jar \""${JARPATH}"\" "${ARGS[@]}"
+ echo Shell running: \""${JAVA}"\" ${JVMARGSSTR} -jar \""${JARPATH}"\" ${ARGSSTR}
fi
"${JAVA}" "${JVMARGS[@]}" -jar "${JARPATH}" "${ARGS[@]}"