#!/usr/bin/env bash

source "${0%/*}/../share/chruby/chruby.sh"

case "$1" in
	-h|--help)
		echo "usage: chruby-exec RUBY [RUBYOPTS] -- COMMAND [ARGS...]"
		exit
		;;
	-V|--version)
		echo "chruby version $CHRUBY_VERSION"
		exit
		;;
esac

if (( $# == 0 )); then
	echo "chruby-exec: RUBY and COMMAND required" >&2
	exit 1
fi

argv=()

for arg in "$@"; do
	shift

	if [[ "$arg" == "--" ]]; then break
	else                          argv+=($arg)
	fi
done

if (( $# == 0 )); then
	echo "chruby-exec: COMMAND required" >&2
	exit 1
fi

command="chruby $(printf "%q " "${argv[@]}") && $(printf "%q " "$@")"

if [[ -t 0 ]]; then exec "$SHELL" -i -l -c "$command"
else                exec "$SHELL"    -l -c "$command"
fi
