34 lines
1.3 KiB
Plaintext
34 lines
1.3 KiB
Plaintext
|
|
# ── nvm (added in v2.0) ───────────────────────────────────────────────────────
|
||
|
|
# Lazy-load nvm to keep shell startup fast
|
||
|
|
export NVM_DIR="$HOME/.nvm"
|
||
|
|
if [[ -s "$NVM_DIR/nvm.sh" ]]; then
|
||
|
|
# Stub functions that load nvm on first use
|
||
|
|
nvm() {
|
||
|
|
unset -f nvm node npm npx
|
||
|
|
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
|
||
|
|
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"
|
||
|
|
nvm "$@"
|
||
|
|
}
|
||
|
|
node() {
|
||
|
|
unset -f nvm node npm npx
|
||
|
|
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
|
||
|
|
node "$@"
|
||
|
|
}
|
||
|
|
npm() {
|
||
|
|
unset -f nvm node npm npx
|
||
|
|
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
|
||
|
|
npm "$@"
|
||
|
|
}
|
||
|
|
npx() {
|
||
|
|
unset -f nvm node npm npx
|
||
|
|
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
|
||
|
|
npx "$@"
|
||
|
|
}
|
||
|
|
# Add default node bin to PATH so node-installed CLIs work without lazy trigger
|
||
|
|
if [[ -d "$NVM_DIR/alias" ]] && [[ -f "$NVM_DIR/alias/default" ]]; then
|
||
|
|
DEFAULT_NODE="$(cat "$NVM_DIR/alias/default" 2>/dev/null)"
|
||
|
|
[[ -d "$NVM_DIR/versions/node/v$DEFAULT_NODE/bin" ]] && \
|
||
|
|
PATH="$NVM_DIR/versions/node/v$DEFAULT_NODE/bin:$PATH"
|
||
|
|
fi
|
||
|
|
fi
|