
#----------------------------------------------------------------------------------------------

platform_os() {
	case "$OSTYPE" in
		linux*)   echo "linux" ;;
		solaris*) echo "solaris" ;;
		darwin*)  echo "macosx" ;; 
		bsd*)     echo "bsd" ;;
		msys*)    echo "windows" ;;
		*)        echo "?" ;;
	esac
}

#----------------------------------------------------------------------------------------------

if [[ $(platform_os) == macosx ]]; then

realpath() {
	[[ $1 = /* ]] && echo "$1" || echo "$PWD/${1#./}"
}

fi

#----------------------------------------------------------------------------------------------

runn() {
	[[ $NOP == 1 ]] && { echo "${@:1}"; return; }
	__runn_log=$(mktemp /tmp/run.XXXXX)
	{ "${@:1}"; } > $__runn_log  2>&1
	[ $? != 0 ] && cat $__runn_log
	rm -f $__runn_log
}

#----------------------------------------------------------------------------------------------

if [[ $NO_ANSI != 1 ]]; then
	RED=$'\033[0;31m'
	GREEN=$'\033[0;32m'
	ORANGE=$'\033[0;33m'
	BLUE=$'\033[0;34m'
	PURPLE=$'\033[0;35m'
	CYAN=$'\033[0;36m'
	LIGHTGRAY=$'\033[0;37m'
	DARKGRAY=$'\033[1;30m'
	LIGHTRED=$'\033[1;31m'
	LIGHTGREEN=$'\033[1;32m'
	YELLOW=$'\033[1;33m'
	LIGHTBLUE=$'\033[1;34m'
	LIGHTPURPLE=$'\033[1;35m'
	LIGHTCYAN=$'\033[1;36m'
	WHITE=$'\033[1;37m'
	NOCOLOR=$'\033[0m'

# 	export BOLD=$(tput bold)
# 	export NOCOLOR=$(tput sgr0)
# 	export RED=$(tput setaf 1)
# 	export GREEN=$(tput setaf 2)
# 	export BRED=$(tput bold; tput setaf 1)
# 	export BGREEN=$(tput bold; tput setaf 2)
fi

#----------------------------------------------------------------------------------------------

eprint() {
	if [[ -t 2 ]]; then
		>&2 echo "${RED}$@${NOCOLOR}"
	else
		>&2 echo "$@"
	fi
}

#----------------------------------------------------------------------------------------------

fixterm() {
	reset
	stty sane
	tput rs1
	clear
	echo -e "\033c\033[0m"
}
