Mercurial > hg > config
view .bash_overrides @ 345:0694882a1ad8
moar dox!
author | Jeff Hammel <jhammel@mozilla.com> |
---|---|
date | Mon, 24 Jun 2013 15:40:01 -0700 |
parents | 597455a28c49 |
children | 5bee5c55a7a0 |
line wrap: on
line source
#!/bin/bash ### command overrides too elaborate for aliases cd() { ENV="" if [ -n "${VIRTUAL_ENV}" ] then ENV="${VIRTUAL_ENV}" fi if [ -d "$@" ] then command cd "$@" else if [ -e "$@" ] then command cd `dirname "$@"` else if [[ "$@" == "^" && -n "${ENV}" ]] then command cd "${ENV}" else command cd "$@" fi fi fi # handle ENVs if [ -e "bin/activate" ] then if [ -n "${ENV}" ] then if [ "${ENV}" != "${PWD}" ] then if [[ -n "`type -t deactivate`" ]] then deactivate fi else return fi fi source "bin/activate" fi ENV="" if [ -n "${VIRTUAL_ENV}" ] then ENV="${VIRTUAL_ENV}" fi if [ -n "${ENV}" ] then FULLPWD=$(python -c 'import os; print os.getcwd()') if (( ! `expr match "${FULLPWD}" "${ENV}"` )) then if [[ -n "`type -t deactivate`" ]] then deactivate fi fi fi unset ENV } function emacsclient() { command emacsclient $@ > /dev/null & } function find { if (( ! $# )) then command find return fi if [ -d $1 ] then DIR="$1" shift else DIR="$PWD" fi if [ "$#" == "1" ] then `which find` -L "$PWD" -not -path '*.svn*' -iname "$1" return 0 fi COMMAND="`which find` -L \"$DIR\" -not -path '*.svn*' $@" #echo $COMMAND # for debugging `which find` -L "$DIR" -not -path '*.svn*' "$@" } function lsdiff { # TODO: extract this general pattern as a bash "decorator" if expr "$1" : 'http[s]\?://.*' &> /dev/null then curl --location "$1" 2> /dev/null | command lsdiff else command lsdiff "$@" fi } function unlink { command unlink `echo $@ | sed 's/\/$//g'` }