summaryrefslogtreecommitdiff
path: root/plugins/shrink-path/shrink-path.plugin.zsh
diff options
context:
space:
mode:
authorTuowen Zhao <ztuowen@gmail.com>2018-06-09 13:05:26 -0400
committerTuowen Zhao <ztuowen@gmail.com>2018-06-09 13:05:26 -0400
commit59e91cd97fcc3c406751f019215f957b36614022 (patch)
tree850cab9426806618e7e8a7a7b5c905a2be019e50 /plugins/shrink-path/shrink-path.plugin.zsh
parentdb38c7c3b2921783d955912262f87ee7dd8cd31b (diff)
parentf461d21de1bd0c1394e57a2e3af69778692e4ba4 (diff)
downloadzsh-59e91cd97fcc3c406751f019215f957b36614022.tar.gz
zsh-59e91cd97fcc3c406751f019215f957b36614022.tar.bz2
zsh-59e91cd97fcc3c406751f019215f957b36614022.zip
Merge branch 'master' of https://github.com/robbyrussell/oh-my-zsh
Diffstat (limited to 'plugins/shrink-path/shrink-path.plugin.zsh')
-rw-r--r--plugins/shrink-path/shrink-path.plugin.zsh16
1 files changed, 5 insertions, 11 deletions
diff --git a/plugins/shrink-path/shrink-path.plugin.zsh b/plugins/shrink-path/shrink-path.plugin.zsh
index 6dd6a930f..29e6f0deb 100644
--- a/plugins/shrink-path/shrink-path.plugin.zsh
+++ b/plugins/shrink-path/shrink-path.plugin.zsh
@@ -88,24 +88,18 @@ shrink_path () {
if (( named )) {
for part in ${(k)nameddirs}; {
- [[ $dir == ${nameddirs[$part]}(/*|) ]] && dir=${dir/${nameddirs[$part]}/\~$part}
+ [[ $dir == ${nameddirs[$part]}(/*|) ]] && dir=${dir/#${nameddirs[$part]}/\~$part}
}
}
- (( tilde )) && dir=${dir/$HOME/\~}
+ (( 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:-/}