#!/bin/sh
# Shell wrapper for R executable.

RHOME=/usr/lib/R
R_HOME=${RHOME}
export RHOME R_HOME

R_BINARY="R.binary"
# Default Printer Paper Size
# Choose one of the following
# R_PAPERSIZE="a4"
# R_PAPERSIZE="letter"
# R_PAPERSIZE="none"
R_PAPERSIZE=${R_PAPERSIZE:-a4}
export R_PAPERSIZE
# Default Print Command
# Choose one of the following
# R_PRINTCMD="lpr"
# R_PRINTCMD="lp"
R_PRINTCMD=${R_PRINTCMD:-lpr}
export R_PRINTCMD
# Default LaTeX and dvips Commands
R_LATEXCMD=${R_LATEXCMD:-${LATEX:-/usr/bin/latex}}
R_DVIPSCMD=${R_DVIPSCMD:-${DVIPS:-/usr/bin/dvips}}
export R_LATEXCMD R_DVIPSCMD
# Default zip/unzip Commands
R_UNZIPCMD=${R_UNZIPCMD:-/usr/bin/unzip}
R_ZIPCMD=${R_ZIPCMD:-}
export R_UNZIPCMD R_ZIPCMD

USE_R_ENVIRON=true

while test -n "${1}"; do
  case ${1} in
    RHOME)
      echo ${RHOME}; exit 0 ;;
    CMD)
      shift; PATH="${PATH}:${RHOME}/bin" exec "${@}" ;;
    BATCH|COMPILE|INSTALL|REMOVE|SHLIB|LIBINDEX)
      CMD="$1"; shift; exec sh "${RHOME}/bin/${CMD}" "${@}" ;;
    -g|--gnome)
      R_BINARY="R.gnome" ;;
    -d|--debugger)
      deb="${2}"; shift 2; args="${@}"
      if test -n "${args}"; then 
	echo "*** Further command line arguments (\`$args') disregarded"
	echo "*** (maybe use \`run ${args}'  from *inside* ${deb}"
	echo ""
      fi
      exec ${deb} ${RHOME}/bin/${R_BINARY} ;;
    --no-environ)
      USE_R_ENVIRON=false ;;
    --vanilla)
      ARGS="${ARGS} ${1}"
      USE_R_ENVIRON=false ;;    
    -h|--help|-\?)
      $0 --version
      cat <<_EOF_

Usage:  R [OPTIONS] [< INFILE] [> OUTFILE]
   or   R command      [arguments]
   or   R CMD Rcommand [arguments]

Options:
  --gnome                   Run the gnome binary.
  --save                    Do save data sets at the end of the session.
  --no-save                 Don't save them.
  --restore                 Do restore previously saved data sets at startup.
  --no-restore              Don't restore them.
  --no-readline             Don't use readline for command-line editing.
  --no-site-file            Don't read the site-wide Rprofile.
  --no-init-file            Don't read the .Rprofile or ~/.Rprofile files.
  --no-environ              Don't read the ~/.Renviron file.
  --vanilla		    Combine --no-save, --no-restore, --no-site-file,
                            --no-init-file, and --no-environ.
  --vsize N                 Set vector heap size to N bytes; \`4M' = 4 MegaB.
  --nsize N                 Set number of cons cells to N. ___See ?Memory___
  -h, --help, -?            Print short help message and exit.
  -q, --quiet, --silent     Don't print startup message.
  --slave                   Make R run as quietly as possible.
  --version                 Print version info and exit.
  --verbose                 Print more information about progress.
  -d NAME, --debugger NAME  Run R through debugger NAME.

Commands:
  RHOME				Give R's home directory
  BATCH infile [ outfile ]	Run Batch job
  COMPILE|INSTALL|REMOVE|SHLIB  Package management & dyn.load compilation

Rcommands:
  Rdconv
  Rdindex, Sd2Rd
  Rd2dvi, Rd2txt
   ...

Report bugs to R-bugs@biostat.ku.dk.

_EOF_
      exit 0 ;;
    *)
      ARGS="${ARGS} ${1}" ;;
  esac
  shift
done

# Startup
if ${USE_R_ENVIRON}; then
  [ -r ${HOME}/.Renviron ] && . ${HOME}/.Renviron
fi
exec ${RHOME}/bin/${R_BINARY}  ${ARGS}

### Local Variables: ***
### mode: sh ***
### sh-indentation: 2 ***
### End: ***
