xabbott /.bashrc

Aliases, few functions, colors, etc. Much help from Arch and Gentoo wikis.
#.bashrc
if [[ $- != *i* ]] ; then
	 # Shell is non-interactive.  Be done now!
	 return
fi

# Bash completion
if [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
fi

# Colors
if [ -f ~/.dir_colors ]; then
	    eval `dircolors ~/.dir_colors`
fi

## Shell varibles
export OOO_FORCE_DESKTOP=gnome
export BROWSER='firefox'
export PAGER=less
export EDITOR=vim
export PATH=$PATH:$HOME/bin:/usr/local/bin
export LESS='-R'
export wpsetters=feh
export HISTCONTROL=ignoredups
export HISTSIZE=5000
export HISTFILESIZE=1000
export HISTIGNORE="&:ls:ll:la:l.:pwd:exit:clear"
LESSOPEN="|lesspipe.sh %s"; export LESSOPEN

stty -ixon		# disable XON/XOFF flow control (^s/^q) 
complete -cf sudo	# Tab complete for sudo

## shopt options
shopt -s cdspell	# This will correct minor spelling errors in a cd command.
shopt -s histappend	# Append to history rather than overwrite
shopt -s checkwinsize	# Check window after each command
shopt -s dotglob	# files beginning with . to be returned in the results of path-name expansion.

## set options
set -o noclobber 	# prevent overwriting files with cat
set -o ignoreeof	# stops ctrl+d from logging me out


# Prompt
BGREEN='\[\033[1;32m\]'
GREEN='\[\033[0;32m\]'
BRED='\[\033[1;31m\]'
RED='\[\033[0;31m\]'
BBLUE='\[\033[1;34m\]'
BLUE='\[\033[0;34m\]'
NORMAL='\[\033[00m\]'
PS1="${BLUE}(${NORMAL}\w${BLUE})\n${NORMAL}\u${BLUE}@\h ${RED}\$ ${NORMAL}"
# X Terminal titles
case "$TERM" in
xterm*|rxvt*)
	PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"'
	;;
*)
	;;
esac


### Aliases
## 
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
##
alias ls='ls -hp --time-style=locale --color'
alias ll='ls -l'
alias la='ls -A'
alias l='ls -CF'
##
alias back='cd $OLDPWD'
alias cd..='cd ..'
alias df='df -h'
alias du='du -h -c'
alias mkdir='mkdir -p -v'
alias ..='cd ..'
## 
alias grep='grep --color=auto'
alias ncmpc='ncmpc -c'
alias daemons='ls /var/run/daemons'
alias ping='ping -c 5'
alias nano='nano -w'
alias more='less'
#
alias pgrep="pgrep -l"
alias recent="ls -lAt | head"
alias Xdefaults="xrdb -load ~/.Xdefaults"

## Sudo
alias pacman='sudo pacman'
alias update='sudo pacman -Syu'


##functions
extract () {
	if [ -f $1 ] ; then
		case $1 in
			*.tar.bz2)	tar xjf $1		;;
			*.tar.gz)	tar xzf $1		;;
			*.bz2)		bunzip2 $1		;;
			*.rar)		rar x $1		;;
			*.gz)		gunzip $1		;;
			*.tar)		tar xf $1		;;
			*.tbz2)		tar xjf $1		;;
			*.tgz)		tar xzf $1		;;
			*.zip)		unzip $1		;;
			*.Z)		uncompress $1	;;
			*)			echo "'$1' cannot be extracted via extract()" ;;
		esac
	else
		echo "'$1' is not a valid file"
	fi
}

grab() {
	sudo chown -R ${USER} ${1:-.}
}

psgrep() {
	if [ ! -z $1 ] ; then
		echo "Grepping for processes matching $1..."
		ps aux | grep $1 | grep -v grep
	else
		echo "!! Need name to grep for"
	fi
}

# backup 
bu () { cp $1 ~/.backup/`basename $1`-`date +%Y%m%d%H%M`.backup ; }