From c09783c2554e505cc04ef0fc7465341475050947 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Cornell=C3=A0?= Date: Sat, 26 May 2018 19:02:03 +0200 Subject: [PATCH 1/2] Revert "unset chpwd_functions before running cd ... (#6830)" This reverts commit 3dab7e46e8815838c8099040e11a7ae9a30ba03d. --- plugins/shrink-path/shrink-path.plugin.zsh | 5 ----- 1 file changed, 5 deletions(-) diff --git a/plugins/shrink-path/shrink-path.plugin.zsh b/plugins/shrink-path/shrink-path.plugin.zsh index 6dd6a930f..f111962a5 100644 --- a/plugins/shrink-path/shrink-path.plugin.zsh +++ b/plugins/shrink-path/shrink-path.plugin.zsh @@ -94,11 +94,6 @@ 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]} From 66cb4005ab6cfcd6b092c1b482e767af214e83bb Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Wed, 1 Mar 2017 15:32:00 -0800 Subject: [PATCH 2/2] Update shrink-path to use cd -q for bypassing the chpwd callbacks --- plugins/shrink-path/shrink-path.plugin.zsh | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/plugins/shrink-path/shrink-path.plugin.zsh b/plugins/shrink-path/shrink-path.plugin.zsh index f111962a5..e7eed1705 100644 --- a/plugins/shrink-path/shrink-path.plugin.zsh +++ b/plugins/shrink-path/shrink-path.plugin.zsh @@ -94,13 +94,12 @@ shrink_path () { (( tilde )) && dir=${dir/$HOME/\~} tree=(${(s:/:)dir}) ( - 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 )) { @@ -117,7 +116,7 @@ shrink_path () { (( short )) && break done result+="/$part" - cd $dir + cd -q $dir shift tree } echo ${result:-/}