feat(nvm): add silent-autoload setting (#11363)

Co-authored-by: Michał Regulski <regulskimichal@outlook.com>

Closes #10942
This commit is contained in:
Carlo 2022-12-01 19:44:48 +01:00 committed by GitHub
parent a051eb04b8
commit 64bc22aee4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 16 additions and 6 deletions

View file

@ -48,5 +48,13 @@ If set, the plugin will automatically load a node version when if finds a
version to load. This can be done, similar as previous options, adding: version to load. This can be done, similar as previous options, adding:
```zsh ```zsh
zstyle ':omz:plugins:nvm' autoload true zstyle ':omz:plugins:nvm' autoload yes
``` ```
To remove the output generated by NVM when autoloading, you can set the following option:
```zsh
zstyle ':omz:plugins:nvm' silent-autoload yes
```
Note: _this will not remove regular `nvm` output_

View file

@ -24,11 +24,11 @@ if (( ${+NVM_LAZY} + ${+NVM_LAZY_CMD} + ${+NVM_AUTOLOAD} )); then
# Nicely print the list in the style `var1, var2 and var3` # Nicely print the list in the style `var1, var2 and var3`
echo "${fg[yellow]}[nvm plugin] Variable-style settings are deprecated. Instead of ${(j:, :)used_vars[1,-2]}${used_vars[-2]+ and }${used_vars[-1]}, use:\n" echo "${fg[yellow]}[nvm plugin] Variable-style settings are deprecated. Instead of ${(j:, :)used_vars[1,-2]}${used_vars[-2]+ and }${used_vars[-1]}, use:\n"
if (( $+NVM_AUTOLOAD )); then if (( $+NVM_AUTOLOAD )); then
echo " zstyle ':omz:plugins:nvm' autoload true" echo " zstyle ':omz:plugins:nvm' autoload yes"
zstyle ':omz:plugins:nvm' autoload yes zstyle ':omz:plugins:nvm' autoload yes
fi fi
if (( $+NVM_LAZY )); then if (( $+NVM_LAZY )); then
echo " zstyle ':omz:plugins:nvm' lazy true" echo " zstyle ':omz:plugins:nvm' lazy yes"
zstyle ':omz:plugins:nvm' lazy yes zstyle ':omz:plugins:nvm' lazy yes
fi fi
if (( $+NVM_LAZY_CMD )); then if (( $+NVM_LAZY_CMD )); then
@ -61,9 +61,11 @@ fi
# Autoload nvm when finding a .nvmrc file in the current directory # Autoload nvm when finding a .nvmrc file in the current directory
# Adapted from: https://github.com/nvm-sh/nvm#zsh # Adapted from: https://github.com/nvm-sh/nvm#zsh
if zstyle -t ':omz:plugins:nvm' autoload; then if zstyle -t ':omz:plugins:nvm' autoload; then
load-nvmrc() { function load-nvmrc {
local node_version="$(nvm version)" local node_version="$(nvm version)"
local nvmrc_path="$(nvm_find_nvmrc)" local nvmrc_path="$(nvm_find_nvmrc)"
local nvm_silent=""
zstyle -t ':omz:plugins:nvm' silent-autoload && _nvm_silent="--silent"
if [[ -n "$nvmrc_path" ]]; then if [[ -n "$nvmrc_path" ]]; then
local nvmrc_node_version=$(nvm version "$(cat "${nvmrc_path}")") local nvmrc_node_version=$(nvm version "$(cat "${nvmrc_path}")")
@ -71,11 +73,11 @@ if zstyle -t ':omz:plugins:nvm' autoload; then
if [[ "$nvmrc_node_version" = "N/A" ]]; then if [[ "$nvmrc_node_version" = "N/A" ]]; then
nvm install nvm install
elif [[ "$nvmrc_node_version" != "$node_version" ]]; then elif [[ "$nvmrc_node_version" != "$node_version" ]]; then
nvm use nvm use $nvm_silent
fi fi
elif [[ "$node_version" != "$(nvm version default)" ]]; then elif [[ "$node_version" != "$(nvm version default)" ]]; then
echo "Reverting to nvm default version" echo "Reverting to nvm default version"
nvm use default nvm use default $nvm_silent
fi fi
} }