[wd] update minor version (v0.4.2)

This commit is contained in:
Markus Faerevaag 2015-11-23 22:22:45 +01:00
parent 22632aac7c
commit 7d9648e631

View file

@ -8,7 +8,7 @@
# @github.com/mfaerevaag/wd # @github.com/mfaerevaag/wd
# version # version
readonly WD_VERSION=0.4 readonly WD_VERSION=0.4.2
# colors # colors
readonly WD_BLUE="\033[96m" readonly WD_BLUE="\033[96m"
@ -143,7 +143,7 @@ wd_warp()
fi fi
elif [[ ${points[$point]} != "" ]] elif [[ ${points[$point]} != "" ]]
then then
cd ${points[$point]} cd ${points[$point]/#\~/$HOME}
else else
wd_exit_fail "Unknown warp point '${point}'" wd_exit_fail "Unknown warp point '${point}'"
fi fi
@ -169,7 +169,7 @@ wd_add()
elif [[ ${points[$2]} == "" ]] || $force elif [[ ${points[$2]} == "" ]] || $force
then then
wd_remove $point > /dev/null wd_remove $point > /dev/null
printf "%q:%s\n" "${point}" "${PWD}" >> $WD_CONFIG printf "%q:%s\n" "${point}" "${PWD/#$HOME/~}" >> $WD_CONFIG
wd_print_msg $WD_GREEN "Warp point added" wd_print_msg $WD_GREEN "Warp point added"
@ -203,6 +203,21 @@ wd_list_all()
{ {
wd_print_msg $WD_BLUE "All warp points:" wd_print_msg $WD_BLUE "All warp points:"
entries=$(sed "s:${HOME}:~:g" $WD_CONFIG)
max_warp_point_length=0
while IFS= read -r line
do
arr=(${(s,:,)line})
key=${arr[1]}
length=${#key}
if [[ length -gt max_warp_point_length ]]
then
max_warp_point_length=$length
fi
done <<< $entries
while IFS= read -r line while IFS= read -r line
do do
if [[ $line != "" ]] if [[ $line != "" ]]
@ -213,16 +228,16 @@ wd_list_all()
if [[ -z $wd_quiet_mode ]] if [[ -z $wd_quiet_mode ]]
then then
printf "%20s -> %s\n" $key $val printf "%${max_warp_point_length}s -> %s\n" $key $val
fi fi
fi fi
done <<< $(sed "s:${HOME}:~:g" $WD_CONFIG) done <<< $entries
} }
wd_ls() wd_ls()
{ {
wd_getdir $1 wd_getdir $1
ls $dir ls ${dir/#\~/$HOME}
} }
wd_path() wd_path()
@ -248,6 +263,7 @@ wd_show()
local wd_matches local wd_matches
wd_matches=() wd_matches=()
# do a reverse lookup to check whether PWD is in $points # do a reverse lookup to check whether PWD is in $points
PWD="${PWD/$HOME/~}"
if [[ ${points[(r)$PWD]} == $PWD ]] if [[ ${points[(r)$PWD]} == $PWD ]]
then then
for name in ${(k)points} for name in ${(k)points}