tcort /.bashrc

# Thomas Cort 
# Last update: Wed Mar 12 18:35:59 EDT 2008

# If not running interactively, don't do anything
if [ -z "$PS1" ]
then
	return
fi

# Source global definitions
if [ -f /etc/bashrc ]
then
	. /etc/bashrc
fi

# Safe default permissions
umask 077

# Display the revision number of the current repository.
svn_rev() {
	svn info $@ | awk '/^Revision:/ {print $2}'
}

# Do an svn update and show the log messages since the last update.
svn_uplog() {
	local old_revision=`svn_rev $@`
	local first_update=$((${old_revision} + 1))

	svn up -q $@
	if [ $(svn_rev $@) -gt ${old_revision} ]
	then
		svn log -v -rHEAD:${first_update} $@
	else
		echo "No Changes."
	fi
}

# Extracts files from nearly any archive (like unfoo).
function extract() {
	if [ -f $1 ]
	then
		case $1 in
			*.tbz2)
				tar jpvxf $1
				;;
			*.tar.bz2)
				tar jpvxf $1
				;;
			*.bz2)
				bunzip2 $1
				;;
			*.tar.gz)
				tar zvxf $1
				;;
			*.gz)
				gunzip $1
				;;
			*.tar)
				tar vxf $1
				;;
			*.rar)
				unrar x $1
				;;
			*.zip)
				unzip $1
				;;
			*.Z)
				uncompress $1
				;;
			*.7z)
				7z x $1
				;;
			*)
				echo "Don't know how to extract files from '$1'"
			;;
		esac
	else
		echo "Usage: extract [filename]"
	fi
}

function format() {
	find ./ -name \*.[ch] -exec indent -nbad -nbfda -bap -nbc -br -brs -c33 \
	-cd33 -ncdb -ce -ci4 -cli0 -cp33 -d0 -di1 -nfc1 -nfca -i8 -ip0 -l240    \
	-lp -npcs -npsl -nsc -nsob -nss -ts8 -cs -ut {} \;
	find ./ -name \*.[ch]~ -exec rm {} \;
}