diff options
| author | Marc Cornellà <hello@mcornella.com> | 2021-08-17 12:31:37 +0200 | 
|---|---|---|
| committer | Marc Cornellà <hello@mcornella.com> | 2021-08-17 12:31:37 +0200 | 
| commit | 708bbe12c5817e380c83d0c49bf684b0fc5d0024 (patch) | |
| tree | 06b1b674dd5d5a983680f8e210273232f1ce92a0 /lib | |
| parent | 4455c13e063cf81ba427f98e1dce2024ecd50762 (diff) | |
| download | zsh-708bbe12c5817e380c83d0c49bf684b0fc5d0024.tar.gz zsh-708bbe12c5817e380c83d0c49bf684b0fc5d0024.tar.bz2 zsh-708bbe12c5817e380c83d0c49bf684b0fc5d0024.zip  | |
fix(cli): fix multiple errors in `plugin disable/enable`
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/cli.zsh | 43 | 
1 files changed, 22 insertions, 21 deletions
diff --git a/lib/cli.zsh b/lib/cli.zsh index 1289df730..e490149e0 100644 --- a/lib/cli.zsh +++ b/lib/cli.zsh @@ -230,9 +230,9 @@ function _omz::plugin::disable {    local awk_script="  # if plugins=() is in oneline form, substitute disabled plugins and go to next line  /^\s*plugins=\([^#]+\).*\$/ { -  sub(/\s+(${(j:|:)dis_plugins})/, \"\") # with spaces before -  sub(/(${(j:|:)dis_plugins})\s+/, \"\") # with spaces after -  sub(/\((${(j:|:)dis_plugins})\)/, \"\") # without spaces (only plugin) +  gsub(/\s+(${(j:|:)dis_plugins})/, \"\") # with spaces before +  gsub(/(${(j:|:)dis_plugins})\s+/, \"\") # with spaces after +  gsub(/\((${(j:|:)dis_plugins})\)/, \"\") # without spaces (only plugin)    print \$0    next  } @@ -240,9 +240,9 @@ function _omz::plugin::disable {  # if plugins=() is in multiline form, enable multi flag and disable plugins if they're there  /^\s*plugins=\(/ {    multi=1 -  sub(/\s+(${(j:|:)dis_plugins})/, \"\") -  sub(/(${(j:|:)dis_plugins})\s+/, \"\") -  sub(/\((${(j:|:)dis_plugins})\)/, \"\") +  gsub(/\s+(${(j:|:)dis_plugins})/, \"\") +  gsub(/(${(j:|:)dis_plugins})\s+/, \"\") +  gsub(/\((${(j:|:)dis_plugins})\)/, \"\")    print \$0    next  } @@ -251,17 +251,17 @@ function _omz::plugin::disable {  # add new plugins and disable multi flag  multi == 1 && /^[^#]*\)/ {    multi=0 -  sub(/\s+(${(j:|:)dis_plugins})/, \"\") -  sub(/(${(j:|:)dis_plugins})\s+/, \"\") -  sub(/\((${(j:|:)dis_plugins})\)/, \"\") +  gsub(/\s+(${(j:|:)dis_plugins})/, \"\") +  gsub(/(${(j:|:)dis_plugins})\s+/, \"\") +  gsub(/\((${(j:|:)dis_plugins})\)/, \"\")    print \$0    next  }  multi == 1 { -  sub(/\s+(${(j:|:)dis_plugins})/, \"\") -  sub(/(${(j:|:)dis_plugins})\s+/, \"\") -  sub(/\((${(j:|:)dis_plugins})\)/, \"\") +  gsub(/\s+(${(j:|:)dis_plugins})/, \"\") +  gsub(/(${(j:|:)dis_plugins})\s+/, \"\") +  gsub(/\((${(j:|:)dis_plugins})\)/, \"\")    print \$0    next  } @@ -283,13 +283,13 @@ multi == 1 {    # Exit if the new .zshrc file has syntax errors    if ! zsh -n ~/.zshrc; then      _omz::log error "broken syntax in ~/.zshrc. Rolling back changes..." -    mv ~/.zshrc ~/.zshrc.disabled -    mv ~/.zshrc.swp ~/.zshrc +    command mv -f ~/.zshrc ~/.zshrc.disabled +    command mv -f ~/.zshrc.swp ~/.zshrc      return 1    fi    # Restart the zsh session if there were no errors -  _omz::log info "" +  _omz::log info "plugins disabled: ${(j:, :)dis_plugins}."    # Old zsh versions don't have ZSH_ARGZERO    local zsh="${ZSH_ARGZERO:-${functrace[-1]%:*}}" @@ -344,26 +344,27 @@ multi == 1 && /^[^#]*\)/ {  { print \$0 }  " -  awk "$awk_script" ~/.zshrc > ~/.zshrc.disabled \ -  && mv ~/.zshrc ~/.zshrc.swp \ -  && mv ~/.zshrc.disabled ~/.zshrc +  awk "$awk_script" ~/.zshrc > ~/.zshrc.enabled \ +  && command mv -f ~/.zshrc ~/.zshrc.swp \ +  && command mv -f ~/.zshrc.enabled ~/.zshrc    # Exit if the new .zshrc file wasn't created correctly    [[ $? -eq 0 ]] || {      local ret=$? -    _omz::log error "error disabling plugins." +    _omz::log error "error enabling plugins."      return $ret    }    # Exit if the new .zshrc file has syntax errors    if ! zsh -n ~/.zshrc; then      _omz::log error "broken syntax in ~/.zshrc. Rolling back changes..." -    mv ~/.zshrc ~/.zshrc.disabled -    mv ~/.zshrc.swp ~/.zshrc +    command mv -f ~/.zshrc ~/.zshrc.enabled +    command mv -f ~/.zshrc.swp ~/.zshrc      return 1    fi    # Restart the zsh session if there were no errors +  _omz::log info "plugins enabled: ${(j:, :)add_plugins}."    # Old zsh versions don't have ZSH_ARGZERO    local zsh="${ZSH_ARGZERO:-${functrace[-1]%:*}}"  | 
