1
0
Fork 0
mirror of https://github.com/ohmyzsh/ohmyzsh.git synced 2024-11-16 19:00:07 +00:00
ohmyzsh/plugins/pj/pj.plugin.zsh
Marc Cornellà c9c11d605f Fix _pj completion function
- `$PROJECT_PATHS/*` wasn't working correctly. You have to iterate over
  its elements in order to use globbing with it.

- The `$projects:t` line wasn't necessary if we used `compadd`.

- `compadd` better supports destructuring an array with spaces in some
  of its elements.
2016-08-16 08:32:43 +02:00

36 lines
613 B
Bash

alias pjo="pj open"
function pj () {
cmd="cd"
file=$1
if [[ "open" == "$file" ]] then
shift
file=$*
cmd=(${(s: :)EDITOR})
else
file=$*
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 () {
emulate -L zsh
typeset -a projects
for basedir ($PROJECT_PATHS); do
projects+=(${basedir}/*(/N))
done
compadd ${projects:t}
}
compdef _pj pj