#set -x  # Print out all of the commands that are executing.

# For Windows setup
test -f ~/.functions && . ~/.functions
test -f ~/.aliases && . ~/.aliases
test -f ~/.private-dotfiles/env && . ~/.private-dotfiles/env
test -f ~/.env.platform && . ~/.env.platform

# Unbreak broken, non-colored terminal
export TERM=xterm-256color

# Don't use ^D to exit
set -o ignoreeof

# Needed for mingw32
export PATH=$HOME/bin/:$HOME/.dotfiles/bin:$PATH

# TMP and TEMP are defined in the Windows environment. Leaving them set to the default
# Windows temporary directory can have unexpected consequences.
export TMP=/tmp
export TEMP=/tmp
export TMPDIR=/tmp

# Customize the shell prompt
parse_git_branch() {
  if [[ "$PWD" != "$HOME" ]]; then
    git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
  fi
}
export PS1='\[\033[0;32m\]\[\033[0m\033[0;32m\]\u\[\033[0;36m\] @ \w\[\033[33m\]\n$(parse_git_branch)\[\033[0;32m\]\[\033[0m\033[0;32m\] \$\[\033[0m\033[0;32m\]\[\033[0m\] '

# Git autocompletion
# Git bash file can be downloaded with: `curl https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash -o ~/.git-completion.bash`
if [ -f ~/.git-completion.bash ]; then
  . ~/.git-completion.bash

  # Git autocompletion fixes for bash aliases
  __git_complete g     __git_main
  __git_complete gco   _git_checkout
  __git_complete gl    _git_branch
  __git_complete gll   _git_branch
  __git_complete gsh   _git_branch
  __git_complete gbd   _git_branch
  __git_complete gpo   _git_branch
  __git_complete grb   _git_branch
  __git_complete gm    _git_merge
  __git_complete gmff  _git_merge
  __git_complete gmnff _git_merge
fi

cd ~

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion
