# fnm (Fast Node Manager) — always-on via ~/.zshenv FNM_PATH="${XDG_DATA_HOME:-$HOME/.local/share}/fnm" [[ -d "$FNM_PATH" ]] && path=("$FNM_PATH" ${path:#$FNM_PATH}) if command -v fnm &> /dev/null; then _easyzsh_fnm_state="${XDG_STATE_HOME:-$HOME/.local/state}/fnm_multishells" _easyzsh_fnm_ready=0 if [[ -n "$FNM_MULTISHELL_PATH" && -d "$FNM_MULTISHELL_PATH/bin" ]] \ && [[ "$FNM_MULTISHELL_PATH" == "$_easyzsh_fnm_state/"* || "$FNM_MULTISHELL_PATH" == "$FNM_PATH/"* ]]; then if [[ ! -o interactive ]] || (( $+functions[_fnm_autoload_hook] )); then _easyzsh_fnm_ready=1 fi fi if (( _easyzsh_fnm_ready )); then path=("$FNM_MULTISHELL_PATH/bin" ${path:#$FNM_MULTISHELL_PATH/bin}) else _easyzsh_fnm_prev="$FNM_MULTISHELL_PATH" if [[ -o interactive ]]; then eval "$(fnm env --use-on-cd --shell zsh)" else eval "$(fnm env --shell zsh)" fi if [[ -n "$_easyzsh_fnm_prev" ]]; then path=(${path:#$_easyzsh_fnm_prev/bin}) fi unset _easyzsh_fnm_prev fi unset _easyzsh_fnm_ready _easyzsh_fnm_state fi export PATH