You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
594 B
37 lines
594 B
alias pjo="pj open" |
|
|
|
pj () { |
|
emulate -L zsh |
|
|
|
cmd="cd" |
|
project=$1 |
|
|
|
if [[ "open" == "$project" ]]; then |
|
shift |
|
project=$* |
|
cmd=${=EDITOR} |
|
else |
|
project=$* |
|
fi |
|
|
|
for basedir ($PROJECT_PATHS); do |
|
if [[ -d "$basedir/$project" ]]; then |
|
$cmd "$basedir/$project" |
|
return |
|
fi |
|
done |
|
|
|
echo "No such project '${project}'." |
|
} |
|
|
|
_pj () { |
|
emulate -L zsh |
|
|
|
typeset -a projects |
|
for basedir ($PROJECT_PATHS); do |
|
projects+=(${basedir}/*(/N)) |
|
done |
|
|
|
compadd ${projects:t} |
|
} |
|
compdef _pj pj
|
|
|