Mercurial > hg > config
annotate .bash_overrides @ 713:1d066bfdb744
merge
| author | Jeff Hammel <k0scist@gmail.com> | 
|---|---|
| date | Thu, 16 Oct 2014 18:27:21 -0700 | 
| parents | 047a53a8fbad | 
| children | 753b1c2bd64c | 
| rev | line source | 
|---|---|
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 1 #!/bin/bash | 
| 305 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
302diff
changeset | 2 | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
302diff
changeset | 3 ### command overrides too elaborate for aliases | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 4 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 5 cd() { | 
| 287 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 6 | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 7 ENV="" | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 8 if [ -n "${VIRTUAL_ENV}" ] | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 9 then | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 10 ENV="${VIRTUAL_ENV}" | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 11 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 12 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 13 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 14 if [ -d "$@" ] | 
| 287 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 15 then | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 16 command cd "$@" | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 17 else | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 18 if [ -e "$@" ] | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 19 then | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 20 command cd `dirname "$@"` | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 21 else | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 22 if [[ "$@" == "^" && -n "${ENV}" ]] | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 23 then | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 24 command cd "${ENV}" | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 25 else | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 26 command cd "$@" | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 27 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 28 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 29 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 30 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 31 # handle ENVs | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 32 if [ -e "bin/activate" ] | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 33 then | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 34 if [ -n "${ENV}" ] | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 35 then | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 36 if [ "${ENV}" != "${PWD}" ] | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 37 then | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 38 if [[ -n "`type -t deactivate`" ]] | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 39 then | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 40 deactivate | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 41 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 42 else | 
| 287 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 43 return | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 44 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 45 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 46 source "bin/activate" | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 47 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 48 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 49 ENV="" | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 50 if [ -n "${VIRTUAL_ENV}" ] | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 51 then | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 52 ENV="${VIRTUAL_ENV}" | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 53 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 54 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 55 if [ -n "${ENV}" ] | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 56 then | 
| 564 | 57 FULLPWD=$(python -c 'import os; print (os.getcwd())') | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 58 if (( ! `expr match "${FULLPWD}" "${ENV}"` )) | 
| 287 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 59 then | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 60 if [[ -n "`type -t deactivate`" ]] | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 61 then | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 62 deactivate | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 63 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 64 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 65 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 66 unset ENV | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 67 } | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 68 | 
| 287 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 69 function emacsclient() { | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 70 command emacsclient $@ > /dev/null & | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 71 } | 
| 287 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 72 | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 73 function find { | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 74 | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 75 if (( ! $# )) | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 76 then | 
| 305 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
302diff
changeset | 77 command find | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
302diff
changeset | 78 return | 
| 287 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 79 fi | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 80 | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 81 if [ -d $1 ] | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 82 then | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 83 DIR="$1" | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 84 shift | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 85 else | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 86 DIR="$PWD" | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 87 fi | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 88 | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 89 if [ "$#" == "1" ] | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 90 then | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 91 `which find` -L "$PWD" -not -path '*.svn*' -iname "$1" | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 92 return 0 | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 93 fi | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 94 | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 95 COMMAND="`which find` -L \"$DIR\" -not -path '*.svn*' $@" | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 96 #echo $COMMAND # for debugging | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 97 `which find` -L "$DIR" -not -path '*.svn*' "$@" | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 98 } | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 99 | 
| 414 | 100 # make hg safer since $HOME is versioned | 
| 412 
5bee5c55a7a0
args test + bash overrides hg safety
 Jeff Hammel <jhammel@mozilla.com> parents: 
312diff
changeset | 101 function hg { | 
| 413 | 102 if [[ "$(command hg root)" == "${HOME}" ]] | 
| 412 
5bee5c55a7a0
args test + bash overrides hg safety
 Jeff Hammel <jhammel@mozilla.com> parents: 
312diff
changeset | 103 then | 
| 
5bee5c55a7a0
args test + bash overrides hg safety
 Jeff Hammel <jhammel@mozilla.com> parents: 
312diff
changeset | 104 if [[ "$*" == st* ]] | 
| 
5bee5c55a7a0
args test + bash overrides hg safety
 Jeff Hammel <jhammel@mozilla.com> parents: 
312diff
changeset | 105 then | 
| 
5bee5c55a7a0
args test + bash overrides hg safety
 Jeff Hammel <jhammel@mozilla.com> parents: 
312diff
changeset | 106 command hg st -q | 
| 
5bee5c55a7a0
args test + bash overrides hg safety
 Jeff Hammel <jhammel@mozilla.com> parents: 
312diff
changeset | 107 return | 
| 
5bee5c55a7a0
args test + bash overrides hg safety
 Jeff Hammel <jhammel@mozilla.com> parents: 
312diff
changeset | 108 fi | 
| 414 | 109 if [[ "$*" == res* ]] || [[ "$*" == pur* ]] | 
| 412 
5bee5c55a7a0
args test + bash overrides hg safety
 Jeff Hammel <jhammel@mozilla.com> parents: 
312diff
changeset | 110 then | 
| 
5bee5c55a7a0
args test + bash overrides hg safety
 Jeff Hammel <jhammel@mozilla.com> parents: 
312diff
changeset | 111 echo "Aborting \'hg $*\'; hg root is ${HOME}!" | 
| 413 | 112 return 1 | 
| 412 
5bee5c55a7a0
args test + bash overrides hg safety
 Jeff Hammel <jhammel@mozilla.com> parents: 
312diff
changeset | 113 fi | 
| 
5bee5c55a7a0
args test + bash overrides hg safety
 Jeff Hammel <jhammel@mozilla.com> parents: 
312diff
changeset | 114 fi | 
| 417 | 115 command hg "$@" | 
| 412 
5bee5c55a7a0
args test + bash overrides hg safety
 Jeff Hammel <jhammel@mozilla.com> parents: 
312diff
changeset | 116 } | 
| 
5bee5c55a7a0
args test + bash overrides hg safety
 Jeff Hammel <jhammel@mozilla.com> parents: 
312diff
changeset | 117 | 
| 287 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 118 function lsdiff { | 
| 305 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
302diff
changeset | 119 # TODO: extract this general pattern as a bash "decorator" | 
| 287 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 120 if expr "$1" : 'http[s]\?://.*' &> /dev/null | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 121 then | 
| 302 
1a177f9b51d4
follow the damn redirects
 Jeff Hammel <jhammel@mozilla.com> parents: 
287diff
changeset | 122 curl --location "$1" 2> /dev/null | command lsdiff | 
| 287 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 123 else | 
| 312 | 124 command lsdiff "$@" | 
| 287 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 125 fi | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 126 | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 127 } | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 128 | 
| 544 | 129 function mv { | 
| 130 num=$# | |
| 131 if (( num == 0 )) | |
| 132 then | |
| 133 command mv "$@" | |
| 134 return | |
| 135 fi | |
| 136 last=${!#} | |
| 559 | 137 if [[ "${last:(-1)}" == "/" ]] | 
| 138 then | |
| 139 directory=${last} | |
| 140 else | |
| 141 directory=$(dirname ${last}) | |
| 142 fi | |
| 544 | 143 if [[ ! -e "${directory}" ]] | 
| 144 then | |
| 145 mkdir -p "${directory}" | |
| 146 fi | |
| 147 command mv "$@" | |
| 148 return | |
| 149 | |
| 150 } | |
| 151 | |
| 287 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 152 function unlink { | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 153 command unlink `echo $@ | sed 's/\/$//g'` | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 154 } | 
| 
f890a12d8cf5
add lsdiff override for urls
 Jeff Hammel <jhammel@mozilla.com> parents: 
0diff
changeset | 155 | 
