diff options
author | Tuowen Zhao <ztuowen@gmail.com> | 2018-06-09 13:05:26 -0400 |
---|---|---|
committer | Tuowen Zhao <ztuowen@gmail.com> | 2018-06-09 13:05:26 -0400 |
commit | 59e91cd97fcc3c406751f019215f957b36614022 (patch) | |
tree | 850cab9426806618e7e8a7a7b5c905a2be019e50 /plugins/shrink-path/shrink-path.plugin.zsh | |
parent | db38c7c3b2921783d955912262f87ee7dd8cd31b (diff) | |
parent | f461d21de1bd0c1394e57a2e3af69778692e4ba4 (diff) | |
download | zsh-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.zsh | 16 |
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:-/} |