mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2026-03-20 03:13:33 +01:00
33 lines
681 B
Bash
33 lines
681 B
Bash
zsh-node_modules-bin-update-path() {
|
|
if [[ ! -x $(which npm) ]]; then
|
|
# there is no npm
|
|
return
|
|
fi
|
|
|
|
# figure out the path
|
|
NPM_BIN_PATH=$(npm bin)
|
|
|
|
if [[ ! -d $NPM_BIN_PATH ]]; then
|
|
# there is no dir at bin path
|
|
return
|
|
fi
|
|
|
|
if [[ -n $OLD_NPM_BIN_PATH && $NPM_BIN_PATH == $OLD_NPM_BIN_PATH ]]; then
|
|
# bin path did not change
|
|
return
|
|
fi
|
|
|
|
if [[ -n $OLD_NPM_BIN_PATH ]]; then
|
|
# remove old bin path from $path
|
|
path[$path[(i)$OLD_NPM_BIN_PATH]]=()
|
|
fi
|
|
|
|
# add new bin path to $path
|
|
path=($NPM_BIN_PATH $path)
|
|
export PATH
|
|
|
|
# for next run
|
|
export OLD_NPM_BIN_PATH=$NPM_BIN_PATH
|
|
}
|
|
|
|
precmd_functions+="zsh-node_modules-bin-update-path"
|