function toss () { mv -f $@ ~/.trashcan; }
function xcopy () { tar cvf - -C $1 $1/* | tar xvf - -C $2; }
function checkdns () { ping $( grep nameserver /etc/resolv.conf | awk '{print $2}' | head -1); }
+function has () {
+ which $1 &> /dev/null
+ if [[ $? -eq 0 ]]; then
+ echo 'yes'
+ return 0
+ else
+ echo 'no'
+ return 1
+ fi
+}
-if [[ $(which pidof &> /dev/null; echo $?) -eq 1 ]]; then
+if [[ $( has pidof ) == 'no' ]]; then
function pidof () { ps -e -o pid,comm | grep "$1" | awk '{print $1}'; }
fi
compdef _switchto switchto
+if [[ $( has bbedit ) == 'yes' ]]; then
+ export GUI_EDITOR="bbedit -w"
+elif [[ $( has mate_wait ) == 'yes' ]]; then
+ export GUI_EDITOR="mate_wait"
+else
+ export GUI_EDITOR="vim"
+fi
+
+if [[ -z "$SSH_TTY" ]]; then
+ export EDITOR="$GUI_EDITOR"
+ export SVN_LOG_EDITOR="$GUI_EDITOR"
+ export GIT_SEQUENCE_EDITOR="$GUI_EDITOR"
+else
+ export EDITOR=vim
+ export SVN_LOG_EDITOR=vim
+ export GIT_SEQUENCE_EDITOR=vim
+fi
+
switchto git