97 lines
2.9 KiB
Bash
97 lines
2.9 KiB
Bash
# vim:syntax=sh
|
|
if [[ "`whoami`" == "root" ]]; then
|
|
PS1='\[\033[31;1m\]\u@\H\[\033[32;1m\] [\w]\[\033[35;1m\] \d \t \[\033[34;1m\](\j)\n\$ \[\033[0m\]'
|
|
else
|
|
PS1='\[\033[32;1m\]\u@\H\[\033[31;1m\] [\w]\[\033[35;1m\] \d \t \[\033[34;1m\](\j)\n\$ \[\033[0m\]'
|
|
fi
|
|
# alternate PS1:
|
|
# PS1='[\[\033[31;1m\]\u@\H\[\033[34;1m\] \w\[\033[0m\]]\$ \[\033[0m\]'
|
|
case "$TERM" in
|
|
[ax]term*|rxvt*)
|
|
PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"'
|
|
;;
|
|
*)
|
|
;;
|
|
esac
|
|
alias grep='grep --color=auto'
|
|
alias grepnosvn='grep --color=auto --exclude-dir=".svn"'
|
|
alias egrepnosvn='egrep --color=auto --exclude-dir=".svn"'
|
|
alias gvim='gvim --remote-tab-silent'
|
|
alias cribbage='cribbage -r'
|
|
alias backgammon='backgammon -r -pb'
|
|
# put 'cattodo' in $PROMPT_COMMAND to use
|
|
alias cattodo='if [[ $LAST_WD != $PWD ]]; then if [[ -r .todo ]]; then cat .todo; fi; LAST_WD=$PWD; fi'
|
|
alias ls='ls --color=auto'
|
|
export LESS='Ri'
|
|
function mark()
|
|
{
|
|
local MARKS_FILE=${HOME}/.marks
|
|
local param="$1"
|
|
if [[ ! -f ${MARKS_FILE} ]]; then
|
|
touch ${MARKS_FILE}
|
|
fi
|
|
case "$param" in
|
|
-g)
|
|
local mark_name="$2"
|
|
local mark_dir=$(grep "^$mark_name:" ${MARKS_FILE} | sed -e 's/[^:]*://')
|
|
if [[ "$mark_dir" != "" ]]; then
|
|
cd "$mark_dir"
|
|
fi
|
|
;;
|
|
-s)
|
|
local mark_name="$2"
|
|
local mark_dir=$(grep "^$mark_name:" ${MARKS_FILE} | sed -e 's/[^:]*://')
|
|
echo "$mark_dir"
|
|
;;
|
|
-h)
|
|
echo "mark <name> [<dir>]: mark <dir> (default \$PWD) as <name>"
|
|
echo "mark -g <name> : goto mark <name>"
|
|
echo "mark -s <name> : show mark <name>"
|
|
echo "mark -d <name> : delete mark <name>"
|
|
echo "mark -l : list all marks"
|
|
;;
|
|
-l)
|
|
cat ${MARKS_FILE}
|
|
;;
|
|
-d)
|
|
local mark_name="$2"
|
|
grep -v "^$mark_name:" ${MARKS_FILE} > ${MARKS_FILE}.tmp
|
|
mv ${MARKS_FILE}.tmp ${MARKS_FILE}
|
|
;;
|
|
-*)
|
|
echo "Unrecognized option"
|
|
;;
|
|
*)
|
|
local mark_name="$1"
|
|
local mark_dir="$2"
|
|
if [[ "$mark_dir" == "" ]]; then
|
|
mark_dir=`pwd`
|
|
fi
|
|
grep -v "^$mark_name:" ${MARKS_FILE} > ${MARKS_FILE}.tmp
|
|
mv ${MARKS_FILE}.tmp ${MARKS_FILE}
|
|
echo "$mark_name:$mark_dir" >> ${MARKS_FILE}
|
|
;;
|
|
esac
|
|
}
|
|
export EDITOR=vim
|
|
function git-config-joshs()
|
|
{
|
|
git config --global user.name 'Josh Holtrop'
|
|
local domain='gmail.com'
|
|
git config --global user.email 'jholtrop+git@'${domain}
|
|
git config --global push.default matching
|
|
git config --global color.ui true
|
|
git config --global core.excludesfile ${HOME}/.gitignore
|
|
git config --global core.pager 'less -FRXi'
|
|
git config --global alias.dc 'diff --cached'
|
|
}
|
|
function svn-contributors()
|
|
{
|
|
svn log -q "$@" | grep -Ev '^-{30}' | cut -d '|' -f2 | awk '{ print $1 }' | sort | uniq -c | sort -n
|
|
}
|
|
if [[ "$(which jsvn)" != "" ]]; then
|
|
alias svn='jsvn'
|
|
fi
|
|
|
|
# local
|