User Tools

Site Tools


bashrc

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
bashrc [2009/05/16 15:03] andibashrc [2010/04/28 18:45] (current) 92.195.193.18
Line 3: Line 3:
 This is my ''.bashrc'' This is my ''.bashrc''
  
-<code bash>+<code bash bashrc>
 # Andi's .bashrc # Andi's .bashrc
  
Line 29: Line 29:
   alias ll='ls -l'   alias ll='ls -l'
   alias la='ls -A'   alias la='ls -A'
-  alias l='ls -la'  +  alias l='ls -la' 
 +  export GREP_OPTIONS='--color=auto'
  
   # color in man pages http://icanhaz.com/colors   # color in man pages http://icanhaz.com/colors
Line 47: Line 48:
   # cleanup firefox 3 dbs   # cleanup firefox 3 dbs
   alias ffclean='for f in ~/.mozilla/firefox/*/*.sqlite; do echo $f; sqlite3 $f "VACUUM;"; done'   alias ffclean='for f in ~/.mozilla/firefox/*/*.sqlite; do echo $f; sqlite3 $f "VACUUM;"; done'
 +
 +  # current git branch for prompt below
 +  # http://techblog.floorplanner.com/2008/12/14/working-with-git-branches/
 +  parse_git_branch() {
 +    git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\[\1\]/'
 +  }
 +  # has current branch unrecorded changes?
 +  # http://markelikalderon.com/2009/01/16/dirty-prompts/
 +  parse_git_dirty() {
 +    git diff --quiet HEAD &>/dev/null
 +    [[ $? == 1 ]] && echo "*"
 +  }
  
   # set a fancy prompt and xterm title   # set a fancy prompt and xterm title
   shopt -s checkwinsize   shopt -s checkwinsize
-  if [ ! -"$COLORTERM" ]; then+  if [ "$COLORTERM" != "" -"$TERM" == "xterm" ]; then
     if [ "$USER" == "root" ]; then     if [ "$USER" == "root" ]; then
-      PS1="\[\033]2;\w\007\]\[\033[0;31m\]\u@\h:\w\\$\[\033[0;37m\] "+      PS1='\[\e[0;31m\]\u@\h\[\e[0;35m\]$(parse_git_branch)$(parse_git_dirty)\[\e[0;31m\]:\w\$\[\e[0m\] '
     else     else
-      PS1="\[\033]2;\w\007\]\[\033[0;32m\]\u@\h:\w\\$\[\033[0;37m\] "+      PS1='\[\e[0;32m\]\u@\h\[\e[0;35m\]$(parse_git_branch)$(parse_git_dirty)\[\e[0;32m\]:\w\$\[\e[0m\] 
     fi     fi
   else   else
Line 65: Line 79:
   fi   fi
  
-  # ssh keymanager - see http://notes.splitbrain.org/ssh +  # ssh keymanager - see http://wiki.splitbrain.org/ssh 
-  if [ -e /usr/bin/keychain ]; then+  if [ -e /usr/bin/keychain -a -e ~/.ssh/id_dsa ]; then
     keychain -q ~/.ssh/id_dsa     keychain -q ~/.ssh/id_dsa
     if [ -e ~/.ssh-agent-${HOSTNAME} ]; then     if [ -e ~/.ssh-agent-${HOSTNAME} ]; then
Line 75: Line 89:
     fi     fi
   fi   fi
-  # use zssh if available 
-  if [ -e /usr/bin/zssh ]; then alias ssh='zssh'; fi 
  
   # daily temp dir   # daily temp dir
Line 88: Line 100:
     unset td     unset td
   }   }
 +
 +  # set a sane editor
 +  if [ -e /usr/bin/vim ]; then
 +    export EDITOR=/usr/bin/vim
 +    alias vi=/usr/bin/vim
 +  fi
  
   # print a fortune cookie   # print a fortune cookie
   if which fortune >/dev/null; then   if which fortune >/dev/null; then
-    if [ -z "$COLORTERM" ]; then +    if [ "$COLORTERM" != "" -o "$TERM" == "xterm" ]; then
-      fortune -a -s +
-    else+
       echo -en "\033[0;36m"       echo -en "\033[0;36m"
       fortune -a -s       fortune -a -s
       echo -en "\033[0;37m"       echo -en "\033[0;37m"
 +    else
 +      fortune -a -s
     fi     fi
   fi   fi
bashrc.1242486182.txt.gz · Last modified: 2009/05/16 15:03 by andi