1
0
mirror of https://github.com/ohmyzsh/ohmyzsh.git synced 2025-12-19 17:33:16 +08:00
ohmyzsh-mirror/plugins/pj/pj.plugin.zsh
2025-06-26 15:20:37 +05:30

38 lines
577 B
Bash

alias pjo="pj open"
function pj() {
local cmd="cd"
local project=""
local editor="${EDITOR}"
if [[ "$1" == "open" ]]; then
shift
project="$1"
shift
[[ -n "$1" ]] && editor="$1"
cmd="$editor"
else
project="$*"
fi
for basedir in $PROJECT_PATHS; do
if [[ -d "$basedir/$project" ]]; then
$cmd "$basedir/$project"
return
fi
done
echo "No such project '${project}'."
}
_pj () {
local -a projects
for basedir ($PROJECT_PATHS); do
projects+=(${basedir}/*(/N))
done
compadd ${projects:t}
}
compdef _pj pj