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.
This commit is contained in:
Marc Cornellà 2016-08-11 01:35:45 +02:00
parent 26bef0942b
commit c9c11d605f

View file

@ -24,10 +24,13 @@ function pj () {
} }
function _pj () { function _pj () {
# might be possible to improve this using glob, without the basename trick emulate -L zsh
typeset -a projects typeset -a projects
projects=($PROJECT_PATHS/*) for basedir ($PROJECT_PATHS); do
projects=$projects:t projects+=(${basedir}/*(/N))
_arguments "*:file:($projects)" done
compadd ${projects:t}
} }
compdef _pj pj compdef _pj pj