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