User:Cdemarco/.bashrc: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
# First things first: Where are we? |
<nowiki># First things first: Where are we? |
||
if [ $(uname) == "Darwin" ]; then |
if [ $(uname) == "Darwin" ]; then |
||
PLATFORM=MAC |
PLATFORM=MAC |
||
Line 233: | Line 233: | ||
done |
done |
||
} |
} |
||
</nowiki> |
Revision as of 14:59, 11 December 2008
# First things first: Where are we? if [ $(uname) == "Darwin" ]; then PLATFORM=MAC else PLATFORM=LINUX fi # # ## ### ##### ######## ############# ##################### # source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fi # For later use... qwhich() { which >/dev/null 2>&1 } if [ "$PS1" ] && [ $TERM != "emacs" ] && [ -x /usr/bin/tput ] && \ [ "x`tput kbs`" != "x" ]; then # Fix the annoyance whereby 'xemacs -nw' can't invoke help... stty ek # Fix backspace/delete stty erase ^H stty erase `tput kbs` fi # PROMPT_COMMAND doesn't work at console case $TERM in "linux" | "dumb" | "emacs") true ;; *) PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"' ;; esac # # ## ### ##### ######## ############# ##################### # Set PS1 use_color=false safe_term=${TERM//[^[:alnum:]]/.} # sanitize TERM if [[ -f /etc/DIR_COLORS ]] ; then grep -q "^TERM ${safe_term}" /etc/DIR_COLORS && use_color=true elif type -p dircolors >/dev/null ; then if dircolors --print-database | grep -q "^TERM ${safe_term}" ; then use_color=true fi fi if ${use_color} ; then COLORS=(30 32 33 34 35 36 37) n=$(($RANDOM % ${#COLORS[*]})) b=$(($RANDOM % 2)) if [[ ${EUID} == 0 ]] ; then PS1='\[\033[01;31m\]$(returncode)\[\033[01;31m\]\h \[\033[01;34m\]\W \$ \[\033[00m\]' else PS1='\[\033[${b};31m\]$(returncode)'"\[\033[01;${COLORS[n]}m\]\u@\h \[\033[01;34m\]\w \$ \[\033[00m\]" fi else if [[ ${EUID} == 0 ]] ; then # show root@ when we don't have colors PS1='$(returncode)\u@\h \W \$ ' else PS1='$(returncode)\u@\h \w \$ ' fi fi # Bell too loud? Too ugly? if [ $TERM == "linux" ] ; then setterm -blength 5 -bfreq 100 fi if [ $(qwhich lesspipe) ]; then eval $(lesspipe) # [1] fi umask 0077 # # ## ### ##### ######## ############# ##################### # env variables if [ -a /proc/cpuinfo ]; then export CONCURRENCY_LEVEL=$(($(grep -c processor /proc/cpuinfo) * 2 + 1)) export MAKEOPTS="-j${CONCURRENCY_LEVEL}" fi export PAGER="less -R" if [ $UID -eq 0 ]; then # EDITOR="xemacs -nw" EDITOR="emacs -nw" else # EDITOR="gnuclient -nw" EDITOR="emacs -nw" fi VISUAL=$EDITOR export EDITOR VISUAL export LS_COLORS='no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.ogg=01;35:*.mp3=01;35:*.wav=01;35:' export PYTHONSTARTUP="$HOME/.pythonrc.py" export PYTHONPATH="/$HOME/lib" export LOCALE=en_us export LANG=C export PATH=$PATH:$HOME/bin:/sbin:/usr/sbin export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig export GREP_COLOR='01;33' unset USERNAME export JAVA_HOME=/usr export LESS_TERMCAP_mb=$'\e[01;31m' export LESS_TERMCAP_md=$'\e[01;31m' export LESS_TERMCAP_me=$'\e[0m' export LESS_TERMCAP_so=$'\e[01;44;33m' export LESS_TERMCAP_se=$'\e[0m' export LESS_TERMCAP_us=$'\e[01;32m' export LESS_TERMCAP_ue=$'\e[0m' # # ## ### ##### ######## ############# ##################### # aliases if [ $PLATFORM == "MAC" ]; then alias ls='ls -Fh' alias sl='ls -Fh' else case $TERM in "emacs" | "dumb") alias ls='ls --color=no -Fh' alias sl='ls --color=no -Fh' ;; *) alias ls='ls --color=yes -Fh' alias sl='ls --color=yes -Fh' ;; esac fi alias ipgrep='egrep -o "(([0-9]{1,3}\.){3}[0-9]{1,3})"' alias rot13='tr A-Za-z N-ZA-Mn-za-m' alias ssh='ssh -v' alias dirs='dirs -l -p' alias pushd='pushd >/dev/null' alias popd='popd >/dev/null' alias rm='rm -i' alias cp='cp -i' alias mv='mv -i' alias enscript='enscript -B --font=Courier6' alias his='history' alias hgrep='his | grep' alias cg='egrep -v "^($|[[:space:]]*#|;)" ' alias pysh='ipython -p sh' grep --color=yes 1 /bin/true >/dev/null 2>&1 if ! [ $? -gt 0 ] && [ $TERM != 'dumb' ]; then alias grep='grep --color=yes' fi alias less='less -R' # better than -r alias dircounts='for d in `find . -maxdepth 1 -type d`; do [ $d == '.' ] && continue find $d -type f | wc -l | perl -pe 'chomp'; echo " $d"; done | sort -n' alias dirsizes='find . -maxdepth 1 -type d -name mnt -prune -o -exec du -sk \{\} \; | sort -n' [ $(qwhich vim ) ] && alias vi='vim' # # ## ### ##### ######## ############# ##################### # functions if [ $(qwhich gksu) ]; then true else gksu() { sudo bash -c "export DISPLAY=:0.0; $1" } fi function returncode { # [1] returncode=$? if [ $returncode != 0 ]; then echo "[$returncode]" else echo "" fi } function em { /usr/bin/emacs -nw $* } function eml { em "-l ~/.emacs.d/$*" } function otf { H=$1 echo "pinging..." answer=$(ping -c 3 $H 2>&1) if [ $? -eq 0 ]; then echo "$answer" return 0 fi echo "arpinging..." answer=$(arping -c 3 $H 2>&1) if [ $? -eq 0 ]; then echo "$answer" return 0 fi echo "portscanning..." answer=$(sudo scanrand $H:all 2>&1) if [ "${answer}foo" != "foo" ]; then echo "$answer" return 0 fi echo "$H is not alive." return 1 } walkback() { f=$1 n=$m m=$(($m - 1)) svn diff -r${m}:${n} $f } findword() { for f in \ $(find . -type f | \ grep -v .svn); do \ file $f | grep -q text && grep -iH $1 $f; \ done }