lazy-nvm.sh 732 B

123456789101112131415161718192021222324252627
  1. #!/bin/bash
  2. function lazy_nvm {
  3. unset -f nvm
  4. unset -f npm
  5. unset -f node
  6. unset -f npx
  7. unset -f yarn
  8. unset -f pnpm
  9. if [ -d "${HOME}/.nvm" ]; then
  10. export NVM_DIR="$HOME/.nvm"
  11. [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # linux
  12. if command -v brew >/dev/null 2>&1; then
  13. [ -s "$(brew --prefix nvm)/nvm.sh" ] && source "$(brew --prefix nvm)/nvm.sh" # osx
  14. fi
  15. [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # nvm bash_completion
  16. fi
  17. }
  18. # aliases
  19. function nvm { lazy_nvm; nvm "$@"; }
  20. function npm { lazy_nvm; npm "$@"; }
  21. function node { lazy_nvm; node "$@"; }
  22. function npx { lazy_nvm; npx "$@"; }
  23. function yarn { lazy_nvm; yarn "$@"; }
  24. function pnpm { lazy_nvm; pnpm "$@"; }