1
0
mirror of https://github.com/ohmyzsh/ohmyzsh.git synced 2024-11-23 20:22:28 +08:00
ohmyzsh/plugins/pj/pj.plugin.zsh

34 lines
655 B
Bash
Raw Normal View History

alias pjo="pj open"
2013-02-05 16:45:00 +08:00
function pj () {
2013-02-05 16:45:00 +08:00
cmd="cd"
file=$1
if [[ "open" == "$file" ]] then
shift
file=$*
2013-02-05 16:45:00 +08:00
cmd=(${(s: :)EDITOR})
else
file=$*
2013-02-05 16:45:00 +08:00
fi
for project in $PROJECT_PATHS; do
if [[ -d $project/$file ]] then
$cmd "$project/$file"
unset project # Unset project var
return
fi
done
echo "No such project $1"
}
function _pj () {
# might be possible to improve this using glob, without the basename trick
typeset -a projects
projects=($PROJECT_PATHS/*)
projects=$projects:t
_arguments "*:file:($projects)"
2013-02-05 16:45:00 +08:00
}
compdef _pj pj