Mercurial > hg > config
annotate .bashrc @ 309:6095d439d1f2
new stuff! realwhich
| author | Jeff Hammel <jhammel@mozilla.com> | 
|---|---|
| date | Thu, 16 May 2013 23:27:18 -0700 | 
| parents | fac01a1bcedf | 
| children | a6cd6900419e | 
| rev | line source | 
|---|---|
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 1 source /etc/profile | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 2 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 3 # Test for an interactive shell. There is no need to set anything | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 4 # past this point for scp and rcp, and it's important to refrain from | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 5 # outputting anything in those cases. | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 6 if [[ $- != *i* ]] ; then | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 7 # Shell is non-interactive. Be done now! | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 8 return | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 9 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 10 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 11 # Enable colors for ls, etc. Prefer ~/.dir_colors #64489 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 12 if [[ -f ~/.dir_colors ]] ; then | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 13 eval $(dircolors -b ~/.dir_colors) | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 14 elif [[ -f /etc/DIR_COLORS ]] ; then | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 15 eval $(dircolors -b /etc/DIR_COLORS) | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 16 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 17 | 
| 67 
a791d862148c
add a default MOZCONFIG variable -- BE CAREFUL!
 Jeff Hammel <jhammel@mozilla.com> parents: 
66diff
changeset | 18 # variables | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 19 export BROWSER=$(which firefox) | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 20 export CLICOLOR=1 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 21 export EDITOR='emacs -nw' | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 22 export JS_EDITLINE=1 | 
| 171 
0110a435d2ce
use a directory for mozconfigs
 Jeff Hammel <jhammel@mozilla.com> parents: 
169diff
changeset | 23 export MOZCONFIG=~/mozilla/mozconfigs/mozconfig | 
| 88 
24f933c9d97f
add an xpcshell alias, silly ubuntu installed version is fuxored
 Jeff Hammel <jhammel@mozilla.com> parents: 
86diff
changeset | 24 export MOZSOURCE=~/mozilla/src/mozilla-central | 
| 
24f933c9d97f
add an xpcshell alias, silly ubuntu installed version is fuxored
 Jeff Hammel <jhammel@mozilla.com> parents: 
86diff
changeset | 25 export MOZOBJ=~/mozilla/src/obj-browser | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 26 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 27 # aliases | 
| 250 | 28 alias awd="python -c 'import os; print os.path.realpath(\".\")'" | 
| 246 
d9b8d176c449
add a thing to get the full path to current patch and start organizing aliases
 Jeff Hammel <jhammel@mozilla.com> parents: 
241diff
changeset | 29 alias currentpatch='echo `hg root`/.hg/patches/`hg qapp -v | head -n 1 | cut -f 3 -d " "`' | 
| 
d9b8d176c449
add a thing to get the full path to current patch and start organizing aliases
 Jeff Hammel <jhammel@mozilla.com> parents: 
241diff
changeset | 30 alias datestamp='date +%Y%m%d%H%M%S' | 
| 250 | 31 alias distribute='python setup.py egg_info -RDb "" sdist register upload' | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 32 alias grep='grep --colour=auto' | 
| 246 
d9b8d176c449
add a thing to get the full path to current patch and start organizing aliases
 Jeff Hammel <jhammel@mozilla.com> parents: 
241diff
changeset | 33 alias ls='ls --color=auto' | 
| 250 | 34 alias random="python -c 'import sys, random; foo = sys.argv[1:]; random.shuffle(foo); print \" \".join(foo)'" | 
| 35 alias wget='wget --no-check-certificate' | |
| 88 
24f933c9d97f
add an xpcshell alias, silly ubuntu installed version is fuxored
 Jeff Hammel <jhammel@mozilla.com> parents: 
86diff
changeset | 36 alias xpcshell="LD_LIBRARY_PATH=${MOZOBJ}/dist/bin ${MOZOBJ}/dist/bin/xpcshell" | 
| 241 | 37 | 
| 38 # bzconsole aliases for filing bugs | |
| 39 alias mozbase-bug="bz new Mozbase --cc ':wlach'" | |
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 40 alias mozbuild-bug="bz new --product Core 'Build Config' --cc ':gps'" | 
| 215 
bf4eb11045cc
front end for mozharness bugs
 Jeff Hammel <jhammel@mozilla.com> parents: 
171diff
changeset | 41 alias mozharness-bug="bz new 'Release Engineering: Automation (General)' --cc ':aki' --whiteboard 'mozharness'" | 
| 241 | 42 alias releng-bug="bz new 'Release Engineering: Automation (General)'" | 
| 217 | 43 alias talos-bug="bz new Talos --cc ':jmaher' --cc ':BYK'" | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 44 | 
| 66 | 45 # PROMPT | 
| 119 | 46 PS1='│' | 
| 47 PS2='.' | |
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 48 PROMPT_COMMAND='echo -ne "\033]0;${SSH_CLIENT/*/$HOSTNAME:}${PWD/~/~}\007"' | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 49 | 
| 66 | 50 # PATHs | 
| 147 
700b43d5052e
workaround firefox link problems....:(
 Jeff Hammel <jhammel@mozilla.com> parents: 
144diff
changeset | 51 export PATH=~/firefox:~/bin:~/python:$PATH:/usr/sbin:/usr/games/bin | 
| 169 
ab2fc6222f94
add virtualenv to the PYTHONPATH
 Jeff Hammel <jhammel@mozilla.com> parents: 
167diff
changeset | 52 export PYTHONPATH=~/python:$PYTHONPATH:~/virtualenv | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 53 | 
| 84 | 54 ### functions | 
| 55 | |
| 305 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 56 apply-patch() { | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 57 # apply a patch | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 58 # TODO: | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 59 # - extract this general pattern as a bash "decorator" like `lsdiff` in .bash_overrides | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 60 # - right now level=1; make this configurable (somehow) | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 61 if (( ! $# )) | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 62 then | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 63 echo "No patch supplied" | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 64 return 1 | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 65 fi | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 66 | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 67 for patch in $@ | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 68 do | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 69 if expr "$1" : 'http[s]\?://.*' &> /dev/null | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 70 then | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 71 IS_URL="true" | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 72 else | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 73 IS__URL="false" | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 74 fi | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 75 | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 76 if [[ ${IS_URL} == "true" ]] | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 77 then | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 78 if curl --location "${patch}" 2> /dev/null | (command patch -p1 --dry-run &> /dev/null) | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 79 then | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 80 curl --location "${patch}" 2> /dev/null | command patch -p1 | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 81 continue | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 82 else | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 83 echo "curl --location ${patch} 2> /dev/null | command patch -p1 --dry-run" | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 84 curl --location "${patch}" 2> /dev/null | command patch -p1 --dry-run | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 85 return $? | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 86 fi | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 87 else | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 88 if patch -p1 --dry-run < ${patch} | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 89 then | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 90 patch -p1 < ${patch} | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 91 continue | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 92 else | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 93 echo "patch -p1 --dry-run < ${patch}" | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 94 patch -p1 --dry-run < ${patch} | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 95 return $? | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 96 fi | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 97 fi | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 98 done | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 99 } | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 100 | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 101 cdwin() { | 
| 305 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 102 # change directory to a window's location using its title, | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 103 # as that is set to the cwd by PS1 [?] | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 104 # TODO: ssh windows | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 105 DIR=$(xwininfo | dictify.py xwininfo | awk '{ print $NF }' | sed 's/"//g') | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 106 DIR=${DIR/\~/$HOME} | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 107 cd $DIR | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 108 } | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 109 | 
| 66 | 110 function colors() { | 
| 111 | |
| 112 CLR_WHITE="\033[0;37m" | |
| 113 CLR_WHITEBOLD="\033[1;37m" | |
| 114 CLR_BLACK="\033[0;30m" | |
| 115 CLR_GRAY="\033[1;30m" | |
| 116 CLR_BLUE="\033[1;34m" | |
| 117 CLR_BLUEBOLD="\033[0;34m" | |
| 118 CLR_GREEN="\033[0;32m" | |
| 119 CLR_GREENBOLD="\033[1;32m" | |
| 120 CLR_CYAN="\033[0;36m" | |
| 121 CLR_CYANBOLD="\033[1;36m" | |
| 122 CLR_RED="\033[0;31m" | |
| 123 CLR_REDBOLD="\033[1;31m" | |
| 124 CLR_PURPLE="\033[0;35m" | |
| 125 CLR_PURPLEBOLD="\033[1;35m" | |
| 126 CLR_YELLOW="\033[0;33m" | |
| 127 CLR_YELLOWBOLD="\033[1;33m" | |
| 128 CLR_NOTHING="\033[0m" | |
| 129 } | |
| 130 colors | |
| 131 | |
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 132 eend() { | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 133 # edit the end of a file with emacs | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 134 FILE=$1 | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 135 shift | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 136 emacs +`wc -l "$FILE"` $@ | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 137 } | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 138 | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 139 git-diff-master() { | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 140 # differences of a git repository with master | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 141 git diff $(git merge-base HEAD master) | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 142 } | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 143 | 
| 303 
266d6b337373
still doesnt work but what the fuck
 Jeff Hammel <jhammel@mozilla.com> parents: 
296diff
changeset | 144 EXCLUDES="(\.svn)|(\.mo$)|(\.po$)|(\.pyc$)|(\.hg$)|(\.git$)" | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 145 ff() { | 
| 304 
7ed290454f50
random cleanup but not much
 Jeff Hammel <jhammel@mozilla.com> parents: 
303diff
changeset | 146 # nice fast find function | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 147 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 148 if (( $# < 2 )) | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 149 then | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 150 FILENAME='*' # default -- look in all files | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 151 else | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 152 FILENAME=$2 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 153 fi | 
| 76 | 154 CMD='command find -L $PWD -iname "${FILENAME}" -print0 2> /dev/null | xargs -r0 grep -il "$1" 2> /dev/null | egrep -v "${EXCLUDES}" 2> /dev/null' | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 155 # echo $CMD | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 156 eval $CMD | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 157 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 158 } | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 159 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 160 chainff() { | 
| 304 
7ed290454f50
random cleanup but not much
 Jeff Hammel <jhammel@mozilla.com> parents: 
303diff
changeset | 161 # chained fast find | 
| 
7ed290454f50
random cleanup but not much
 Jeff Hammel <jhammel@mozilla.com> parents: 
303diff
changeset | 162 | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 163 if (( $# < 2 )) | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 164 then | 
| 304 
7ed290454f50
random cleanup but not much
 Jeff Hammel <jhammel@mozilla.com> parents: 
303diff
changeset | 165 return 1 # bad invocation | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 166 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 167 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 168 RESULTS=`ff "$2" "$1"` | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 169 shift 2 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 170 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 171 for i in $RESULTS | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 172 do | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 173 for arg in $@ | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 174 do | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 175 if grep -il "$arg" "$i" &> /dev/null | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 176 then | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 177 touch /dev/null | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 178 else | 
| 260 
eacc4c5ed628
add an alias for mozbuild bugs and cleanup a bit
 Jeff Hammel <jhammel@mozilla.com> parents: 
250diff
changeset | 179 i="" | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 180 break | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 181 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 182 done | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 183 if [ -n "$i" ] | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 184 then | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 185 echo $i | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 186 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 187 done | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 188 } | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 189 | 
| 304 
7ed290454f50
random cleanup but not much
 Jeff Hammel <jhammel@mozilla.com> parents: 
303diff
changeset | 190 | 
| 66 | 191 cff () { | 
| 304 
7ed290454f50
random cleanup but not much
 Jeff Hammel <jhammel@mozilla.com> parents: 
303diff
changeset | 192 # contextual fastfind | 
| 66 | 193 if (( $# < 2 )); then | 
| 194 local FILENAME='*' # default -- look in all files | |
| 195 else | |
| 196 local FILENAME=$2 | |
| 197 fi | |
| 198 | |
| 199 for i in `ff "$1" "$FILENAME"`; do | |
| 200 echo -e "$CLR_GREEN--->>> ""$CLR_YELLOWBOLD""$i""$CLR_NOTHING" : | |
| 201 grep --color=auto -i -n -C 3 "$1" $i | |
| 202 done | |
| 203 | |
| 260 
eacc4c5ed628
add an alias for mozbuild bugs and cleanup a bit
 Jeff Hammel <jhammel@mozilla.com> parents: 
250diff
changeset | 204 } | 
| 66 | 205 | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 206 tmpfile() { | 
| 305 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 207 # make a temporary file if `tempfile` not available | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 208 | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 209 if [ "$#" == "0" ] | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 210 then | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 211 args="tmp" | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 212 else | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 213 args=$@ | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 214 fi | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 215 | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 216 for i in $args | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 217 do | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 218 NEWNAME=${i}.$RANDOM | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 219 | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 220 while [ -e $NEWNAME ] | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 221 do | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 222 NEWNAME=${NEWNAME}.tmp | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 223 done | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 224 echo "$NEWNAME" | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 225 done | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 226 } | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 227 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 228 edpe() { | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 229 # edit and pipe the buffer to stdout | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 230 FILE=`tmpfile` | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 231 $EDITOR $FILE | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 232 cat $FILE | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 233 rm $FILE | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 234 } | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 235 | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 236 isrunning() { | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 237 # is a process running? (by name) | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 238 # see also: talos for a better version | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 239 for i in "$@" | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 240 do | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 241 ps axwww | grep "$i" | grep -v 'grep' | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 242 done | sort | uniq | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 243 | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 244 } | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 245 | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 246 killbyname() { | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 247 # kill a process by name | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 248 kill `isrunning "$@" | awk '{ print $1 }' | onelineit.py` | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 249 } | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 250 | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 251 fn() { | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 252 # full name | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 253 python -c "import os; print os.path.realpath('$*')" | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 254 } | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 255 | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 256 swap() { | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 257 # swap two files | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 258 if [ "$#" != "2" ] | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 259 then | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 260 echo "Usage: $FUNCNAME <file1> <file2>" | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 261 return | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 262 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 263 for i in "$1" "$2" | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 264 do | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 265 if [ ! -w "$i" ] | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 266 then | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 267 echo "$FUNCNAME: Can't move $i" | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 268 return 1 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 269 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 270 done | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 271 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 272 NEWNAME=`basename $1`.$RANDOM | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 273 while [ -e $NEWNAME ] | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 274 do | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 275 NEWNAME=${NEWNAME}.tmp | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 276 echo "$NEWNAME" | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 277 done | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 278 | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 279 mv "$1" "$NEWNAME" | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 280 mv "$2" "$1" | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 281 mv "$NEWNAME" "$2" | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 282 } | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 283 | 
| 309 | 284 ### `which` commands | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 285 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 286 whview() { | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 287 # which view | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 288 less `which $@` | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 289 } | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 290 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 291 whemacs() { | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 292 # which emacs | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 293 emacs -nw `which $@` | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 294 } | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 295 | 
| 309 | 296 realwhich() { | 
| 297 # which -> real paths | |
| 298 command which $@ | while read line | |
| 299 do | |
| 300 python -c "import os; print os.path.realpath('${line}')" | |
| 301 done | |
| 302 } | |
| 303 | |
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 304 ### functions for python | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 305 | 
| 305 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 306 pyfile() { | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 307 # python file path | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 308 python -c "import $1; print $1.__file__" | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 309 } | 
| 
fac01a1bcedf
add an apply-patch function
 Jeff Hammel <jhammel@mozilla.com> parents: 
304diff
changeset | 310 | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 311 setup-all() { | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 312 # setup all for development | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 313 # TODO: flowerbed? | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 314 for i in * | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 315 do | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 316 if [ -e "${i}/setup.py" ] | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 317 then | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 318 cd "${i}" | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 319 python setup.py develop | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 320 cd .. | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 321 fi | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 322 done | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 323 } | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 324 | 
| 296 | 325 recreate-venv() { | 
| 326 # recreate a virtualenv | |
| 327 VIRTUALENV="virtualenv.py" | |
| 328 for i in $@ | |
| 329 do | |
| 330 ${VIRTUALENV} --clear "${i}" | |
| 331 | |
| 332 SRCDIR="${i}"/src | |
| 333 if [ -d "${SRCDIR}" ] | |
| 334 then | |
| 335 . "${i}/bin/activate" | |
| 336 OLDPWD=${PWD} | |
| 337 cd "${SRCDIR}" | |
| 338 for j in * | |
| 339 do | |
| 340 if [ -e "${j}"/setup.py ] | |
| 341 then | |
| 342 cd "${j}" | |
| 343 python setup.py develop | |
| 344 cd .. | |
| 345 fi | |
| 346 done | |
| 347 cd "${OLDPWD}" | |
| 348 fi | |
| 349 done | |
| 350 } | |
| 351 | |
| 260 
eacc4c5ed628
add an alias for mozbuild bugs and cleanup a bit
 Jeff Hammel <jhammel@mozilla.com> parents: 
250diff
changeset | 352 ### functions for version control systems | 
| 
eacc4c5ed628
add an alias for mozbuild bugs and cleanup a bit
 Jeff Hammel <jhammel@mozilla.com> parents: 
250diff
changeset | 353 | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 354 svndance(){ | 
| 71 
3d111401010f
add a function to view the files in a diff
 Jeff Hammel <jhammel@mozilla.com> parents: 
67diff
changeset | 355 # do the svn import dance! | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 356 if (( $# )) | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 357 then | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 358 svn import $1 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 359 cd .. | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 360 rm -rf $OLDPWD | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 361 svn co $1 $OLDPWD | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 362 cd $OLDPWD | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 363 else | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 364 return 1 | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 365 fi | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 366 } | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 367 | 
| 71 
3d111401010f
add a function to view the files in a diff
 Jeff Hammel <jhammel@mozilla.com> parents: 
67diff
changeset | 368 difffiles() { | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 369 grep '^+++ ' $@ | sed 's/+++ b\///' | 
| 71 
3d111401010f
add a function to view the files in a diff
 Jeff Hammel <jhammel@mozilla.com> parents: 
67diff
changeset | 370 } | 
| 
3d111401010f
add a function to view the files in a diff
 Jeff Hammel <jhammel@mozilla.com> parents: 
67diff
changeset | 371 | 
| 260 
eacc4c5ed628
add an alias for mozbuild bugs and cleanup a bit
 Jeff Hammel <jhammel@mozilla.com> parents: 
250diff
changeset | 372 hg-update-all() { | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 373 # update all hg repositories in the current directory | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 374 for i in *; | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 375 do | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 376 if [ -e $i/.hg ] | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 377 then | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 378 cd $i | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 379 hg pull | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 380 hg update | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 381 cd - | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 382 fi | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 383 done | 
| 84 | 384 } | 
| 385 | |
| 110 
bf567a0e8fef
add a hg-qcommit that does the right thing
 Jeff Hammel <jhammel@mozilla.com> parents: 
103diff
changeset | 386 hg-qcommit() { | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 387 message=$1 | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 388 hg qrefresh | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 389 if [ -z "${message}" ] | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 390 then | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 391 hg qcommit | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 392 else | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 393 hg qcommit -m "${message}" | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 394 fi | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 395 hgroot=$(hg root) | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 396 patches=${hgroot}/.hg/patches/ | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 397 if [ -e ${patches}.hg ] | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 398 then | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 399 cd ${patches} | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 400 hg push | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 401 fi | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 402 cd - | 
| 110 
bf567a0e8fef
add a hg-qcommit that does the right thing
 Jeff Hammel <jhammel@mozilla.com> parents: 
103diff
changeset | 403 } | 
| 
bf567a0e8fef
add a hg-qcommit that does the right thing
 Jeff Hammel <jhammel@mozilla.com> parents: 
103diff
changeset | 404 | 
| 89 
dfda4f7d4db4
add a command to generate those hgrc files i always need
 Jeff Hammel <jhammel@mozilla.com> parents: 
88diff
changeset | 405 hgrc() { | 
| 274 | 406 # write an hgrc file | 
| 407 # TODO: in the case you're in an `hg root`...what then? | |
| 408 # - NOTE: /home/jhammel is an `hg root`, so be careful! | |
| 409 # There should be a way to update $(hg root)/.hg/hgrc automatically | |
| 410 # Likewise, git | |
| 411 # Python script? .dotfile? | |
| 89 
dfda4f7d4db4
add a command to generate those hgrc files i always need
 Jeff Hammel <jhammel@mozilla.com> parents: 
88diff
changeset | 412 ROOT="${1}" | 
| 
dfda4f7d4db4
add a command to generate those hgrc files i always need
 Jeff Hammel <jhammel@mozilla.com> parents: 
88diff
changeset | 413 echo "[paths]" | 
| 
dfda4f7d4db4
add a command to generate those hgrc files i always need
 Jeff Hammel <jhammel@mozilla.com> parents: 
88diff
changeset | 414 echo "default = ${ROOT}" | 
| 
dfda4f7d4db4
add a command to generate those hgrc files i always need
 Jeff Hammel <jhammel@mozilla.com> parents: 
88diff
changeset | 415 echo "default-push = ssh://${ROOT#http*://}" | 
| 
dfda4f7d4db4
add a command to generate those hgrc files i always need
 Jeff Hammel <jhammel@mozilla.com> parents: 
88diff
changeset | 416 } | 
| 
dfda4f7d4db4
add a command to generate those hgrc files i always need
 Jeff Hammel <jhammel@mozilla.com> parents: 
88diff
changeset | 417 | 
| 260 
eacc4c5ed628
add an alias for mozbuild bugs and cleanup a bit
 Jeff Hammel <jhammel@mozilla.com> parents: 
250diff
changeset | 418 ### functions for web content | 
| 
eacc4c5ed628
add an alias for mozbuild bugs and cleanup a bit
 Jeff Hammel <jhammel@mozilla.com> parents: 
250diff
changeset | 419 | 
| 
eacc4c5ed628
add an alias for mozbuild bugs and cleanup a bit
 Jeff Hammel <jhammel@mozilla.com> parents: 
250diff
changeset | 420 blog-file() { | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 421 echo "$HOME/web/blog/k0s/entries/public/$1" | 
| 260 
eacc4c5ed628
add an alias for mozbuild bugs and cleanup a bit
 Jeff Hammel <jhammel@mozilla.com> parents: 
250diff
changeset | 422 } | 
| 
eacc4c5ed628
add an alias for mozbuild bugs and cleanup a bit
 Jeff Hammel <jhammel@mozilla.com> parents: 
250diff
changeset | 423 | 
| 101 | 424 flatten() { | 
| 425 directory=$PWD | |
| 426 if [ "$#" == "1" ] | |
| 427 then | |
| 428 directory=$1 | |
| 429 fi | |
| 430 cd $directory | |
| 431 unset find # don't use the alias | |
| 102 | 432 find . -name '*' -type f | sed 's/.\///' | while read line | 
| 101 | 433 do | 
| 434 filename=$(echo $line | sed 's/\//-/g') | |
| 435 mv "${line}" "${filename}" | |
| 436 done | |
| 437 for i in * | |
| 438 do | |
| 439 if [ -d $i ] | |
| 440 then | |
| 441 rm -rf "${i}" | |
| 442 fi | |
| 443 done | |
| 444 } | |
| 445 | |
| 103 
e841c419199e
add process command to get filehandles
 Jeff Hammel <jhammel@mozilla.com> parents: 
102diff
changeset | 446 filehandles() { | 
| 
e841c419199e
add process command to get filehandles
 Jeff Hammel <jhammel@mozilla.com> parents: 
102diff
changeset | 447 TMPFILE=$(tmpfile) | 
| 
e841c419199e
add process command to get filehandles
 Jeff Hammel <jhammel@mozilla.com> parents: 
102diff
changeset | 448 ps -e|grep -v TTY|awk {'print "echo -n \"Process: "$4"\tPID: "$1"\tNumber of FH: \"; lsof -p "$1"|wc -l"'} > ${TMPFILE} | 
| 
e841c419199e
add process command to get filehandles
 Jeff Hammel <jhammel@mozilla.com> parents: 
102diff
changeset | 449 . ${TMPFILE} | sort | 
| 
e841c419199e
add process command to get filehandles
 Jeff Hammel <jhammel@mozilla.com> parents: 
102diff
changeset | 450 rm ${TMPFILE} | 
| 
e841c419199e
add process command to get filehandles
 Jeff Hammel <jhammel@mozilla.com> parents: 
102diff
changeset | 451 } | 
| 
e841c419199e
add process command to get filehandles
 Jeff Hammel <jhammel@mozilla.com> parents: 
102diff
changeset | 452 | 
| 167 
842e1fca024a
add a quotemail function for quoting mail
 Jeff Hammel <jhammel@mozilla.com> parents: 
147diff
changeset | 453 quotemail() { | 
| 
842e1fca024a
add a quotemail function for quoting mail
 Jeff Hammel <jhammel@mozilla.com> parents: 
147diff
changeset | 454 | 
| 
842e1fca024a
add a quotemail function for quoting mail
 Jeff Hammel <jhammel@mozilla.com> parents: 
147diff
changeset | 455 command='s/^/> /' | 
| 
842e1fca024a
add a quotemail function for quoting mail
 Jeff Hammel <jhammel@mozilla.com> parents: 
147diff
changeset | 456 inplace="" | 
| 
842e1fca024a
add a quotemail function for quoting mail
 Jeff Hammel <jhammel@mozilla.com> parents: 
147diff
changeset | 457 if [ "$#" == "2" ] | 
| 
842e1fca024a
add a quotemail function for quoting mail
 Jeff Hammel <jhammel@mozilla.com> parents: 
147diff
changeset | 458 then | 
| 
842e1fca024a
add a quotemail function for quoting mail
 Jeff Hammel <jhammel@mozilla.com> parents: 
147diff
changeset | 459 inplace="-i" | 
| 
842e1fca024a
add a quotemail function for quoting mail
 Jeff Hammel <jhammel@mozilla.com> parents: 
147diff
changeset | 460 fi | 
| 
842e1fca024a
add a quotemail function for quoting mail
 Jeff Hammel <jhammel@mozilla.com> parents: 
147diff
changeset | 461 | 
| 
842e1fca024a
add a quotemail function for quoting mail
 Jeff Hammel <jhammel@mozilla.com> parents: 
147diff
changeset | 462 sed ${inplace} "${command}" "$1" | 
| 
842e1fca024a
add a quotemail function for quoting mail
 Jeff Hammel <jhammel@mozilla.com> parents: 
147diff
changeset | 463 | 
| 
842e1fca024a
add a quotemail function for quoting mail
 Jeff Hammel <jhammel@mozilla.com> parents: 
147diff
changeset | 464 } | 
| 
842e1fca024a
add a quotemail function for quoting mail
 Jeff Hammel <jhammel@mozilla.com> parents: 
147diff
changeset | 465 | 
| 0 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 466 ### include overrides for commands | 
| 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 k0s <k0scist@gmail.com> parents: diff
changeset | 467 source ~/.bash_overrides | 
| 47 
a0636527f809
regenerate fluxbox menus on shell
 Jeff Hammel <k0scist@gmail.com> parents: 
19diff
changeset | 468 | 
| 
a0636527f809
regenerate fluxbox menus on shell
 Jeff Hammel <k0scist@gmail.com> parents: 
19diff
changeset | 469 ### regenerate fluxbox menus here for convenience | 
| 
a0636527f809
regenerate fluxbox menus on shell
 Jeff Hammel <k0scist@gmail.com> parents: 
19diff
changeset | 470 MENU=~/web/site/programs.html | 
| 237 
b33d0c78132c
move menu regeneration to its own function
 Jeff Hammel <jhammel@mozilla.com> parents: 
224diff
changeset | 471 regeneratefluxmenu() { | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 472 if [ -e $MENU ] | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 473 then | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 474 # XXX could be safer | 
| 303 
266d6b337373
still doesnt work but what the fuck
 Jeff Hammel <jhammel@mozilla.com> parents: 
296diff
changeset | 475 # XXX ...along with the fluxbox menu option o_O | 
| 295 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 476 html2flux.py $MENU > ~/.fluxbox/applications | 
| 
e2564dd51334
slowly slowly, step by step...
 Jeff Hammel <jhammel@mozilla.com> parents: 
279diff
changeset | 477 fi | 
| 237 
b33d0c78132c
move menu regeneration to its own function
 Jeff Hammel <jhammel@mozilla.com> parents: 
224diff
changeset | 478 } | 
| 
b33d0c78132c
move menu regeneration to its own function
 Jeff Hammel <jhammel@mozilla.com> parents: 
224diff
changeset | 479 regeneratefluxmenu | 
