Mercurial > dotfiles
view .shell.d/00.path_manipulation.sh @ 378:20e47bc8eea9
hgrc: disable hg-git and hgsubversion
It hasn't been common for me to use either of these extensions for
some time, so just drop both of them from the main hgrc. Instead I'll
enable them as-needed in individual repositories.
author | Augie Fackler <durin42@gmail.com> |
---|---|
date | Thu, 09 Jun 2011 20:20:04 -0500 |
parents | 7dfb7799567f |
children | c85072e620a8 |
line wrap: on
line source
# Functions for manipulating $PATH. Split out so I can use them in .zshenv if I want. function insert_path_element() { insert_element_into_var $1 PATH } function remove_path_element() { remove_element_from_var $1 PATH } function insert_element_into_var () { eval varcontents=\$"$2" eval varname="$2" newcomp="$1" if echo "$varcontents" | grep "$newcomp:" >> /dev/null; then true elif [[ "$varcontents" == "" ]] ; then export $varname="$newcomp" else export $varname="$newcomp:$varcontents" fi } function remove_element_from_var() { eval varcontents=\$"$2" eval varname="$2" newcomp="$1" if echo "$varcontents" | grep "$newcomp:" >> /dev/null; then export $varname="`echo $varcontents | sed s%$newcomp:%%`" elif [[ "$varcontents" == "$newcomp" ]] ; then unset $varname else echo $1 not in $varname fi }