view zshrc @ 7:4263bbc594fe

re-declare $HOST to be hostname only
author Dirk Olmes <dirk@xanthippe.ping.de>
date Wed, 30 Nov 2011 10:05:36 +0100
parents d31291a406ed
children db85a076d8ae
line wrap: on
line source

#
# This is the main zshrc file.
#

if [ -d $HOME/.oh-my-zsh ]; then
	ZSH=$HOME/.oh-my-zsh
    . $HOME/.zsh-env/oh-my-zsh
elif [ -d /var/lib/zsh/oh-my-zsh ]; then
	ZSH=/var/lib/zsh/oh-my-zsh
	. $HOME/.zsh-env/oh-my-zsh
fi

# get rid of some unwanted aliases from the oh-my-zsh env
unalias l
unalias lsa

# custom function that should work on all platforms
cd() { builtin cd "$@"; print -D $PWD; }
ff() { find $2 -print0 | xargs -0 grep $1 }
hgrep() { history | grep $* }
mcd() { mkdir $1; cd $1 }
psg() { ps auxww | grep -v grep | grep -i "$@" }

# utility function that is used by various other modules
removeFromPath() {
    search_term="$1"
    split_path=(${(s/:/)PATH})
    clean_path=""
    for element in ${split_path}
    do
        if [[ "${element}" =~ "${search_term}" ]]; then
            continue
        fi

        if [ ${#clean_path} -eq 0 ]; then
            clean_path="${element}"
        else
            clean_path="${clean_path}:${element}"
        fi
    done
    echo "${clean_path}"
}

# $HOST can either be just the host name or the FQDN. Standardize on the raw host name
export HOST=`echo $HOST | awk -F '.' '{ print $1 }'`

# include a zshrc per OS type
local os_zshrc=$HOME/.zsh-env/zshrc-$OSTYPE
if [ -f ${os_zshrc} ]; then
    . ${os_zshrc}
fi

# include a zshrc per host
local host_zshrc=$HOME/.zsh-env/zshrc-${HOST}
if [ -r ${host_zshrc} ]; then
    . ${host_zshrc}
fi