diff options
author | Marc Cornellà <marc.cornella@live.com> | 2018-05-26 19:07:46 +0200 |
---|---|---|
committer | Marc Cornellà <marc.cornella@live.com> | 2018-05-26 19:07:46 +0200 |
commit | 2294bae06a27166dab9cebea60e76fb9de12d3d3 (patch) | |
tree | 63b93307407d8c989745e2151df0bc78e9c5fb84 | |
parent | d6aeaad83d73855776f7c937ef51428523295352 (diff) | |
parent | 66cb4005ab6cfcd6b092c1b482e767af214e83bb (diff) | |
download | zsh-2294bae06a27166dab9cebea60e76fb9de12d3d3.tar.gz zsh-2294bae06a27166dab9cebea60e76fb9de12d3d3.tar.bz2 zsh-2294bae06a27166dab9cebea60e76fb9de12d3d3.zip |
Merge branch 'shrink-path-chpwd-fix'
Closes #5930.
-rw-r--r-- | plugins/shrink-path/shrink-path.plugin.zsh | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/plugins/shrink-path/shrink-path.plugin.zsh b/plugins/shrink-path/shrink-path.plugin.zsh index 6dd6a930f..e7eed1705 100644 --- a/plugins/shrink-path/shrink-path.plugin.zsh +++ b/plugins/shrink-path/shrink-path.plugin.zsh @@ -94,18 +94,12 @@ shrink_path () { (( tilde )) && dir=${dir/$HOME/\~} tree=(${(s:/:)dir}) ( - # unset chpwd_functions since we'll be calling `cd` and don't - # want any side-effects (eg., if the user was using auto-ls) - chpwd_functions=() - # unset chpwd since even if chpwd_functions is (), zsh will - # attempt to execute chpwd - unfunction chpwd 2> /dev/null if [[ $tree[1] == \~* ]] { - cd ${~tree[1]} + cd -q ${~tree[1]} result=$tree[1] shift tree } else { - cd / + cd -q / } for dir in $tree; { if (( lastfull && $#tree == 1 )) { @@ -122,7 +116,7 @@ shrink_path () { (( short )) && break done result+="/$part" - cd $dir + cd -q $dir shift tree } echo ${result:-/} |