summaryrefslogtreecommitdiff
path: root/plugins/shrink-path/shrink-path.plugin.zsh
diff options
context:
space:
mode:
authorKozlov Alexander <badryke@gmail.com>2018-11-16 13:38:43 +0300
committerGitHub <noreply@github.com>2018-11-16 13:38:43 +0300
commit8c95c52353118643ac3dbd9b0c185a3129b84bf8 (patch)
treeee7497251b7a541480ae5c6a97b63b14381ed5ee /plugins/shrink-path/shrink-path.plugin.zsh
parentdd30cf104c9ca42d89d26a134382ca421869ce7e (diff)
parent3d8f2bda599c8c6d160dc448e5ab28aaf2d5e90d (diff)
downloadzsh-8c95c52353118643ac3dbd9b0c185a3129b84bf8.tar.gz
zsh-8c95c52353118643ac3dbd9b0c185a3129b84bf8.tar.bz2
zsh-8c95c52353118643ac3dbd9b0c185a3129b84bf8.zip
Merge branch 'master' into master
Diffstat (limited to 'plugins/shrink-path/shrink-path.plugin.zsh')
-rw-r--r--plugins/shrink-path/shrink-path.plugin.zsh17
1 files changed, 8 insertions, 9 deletions
diff --git a/plugins/shrink-path/shrink-path.plugin.zsh b/plugins/shrink-path/shrink-path.plugin.zsh
index f111962a5..86102e651 100644
--- a/plugins/shrink-path/shrink-path.plugin.zsh
+++ b/plugins/shrink-path/shrink-path.plugin.zsh
@@ -24,10 +24,10 @@
# Keywords: prompt directory truncate shrink collapse fish
#
# Copyright (C) 2008 by Daniel Friesel <derf@xxxxxxxxxxxxxxxxxx>
-# License: WTFPL <http://sam.zoy.org/wtfpl>
+# License: WTFPL <http://www.wtfpl.net>
#
-# Ref: http://www.zsh.org/mla/workers/2009/msg00415.html
-# http://www.zsh.org/mla/workers/2009/msg00419.html
+# Ref: https://www.zsh.org/mla/workers/2009/msg00415.html
+# https://www.zsh.org/mla/workers/2009/msg00419.html
shrink_path () {
setopt localoptions
@@ -88,19 +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})
(
- 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:-/}