dotfiles/stowers/shell-utils/dot-local/bin/pp

27 lines
559 B
Bash
Executable file

#!/bin/bash
set -euo pipefail
function _get_projects() {
find "${WORKSPACE_DIR?}" -type d -iname ".git" | sed "s|${WORKSPACE_DIR?}/\(.*\)/.git|\1|g"
}
function _pp() {
if command -v fzf &>/dev/null; then
_get_projects | fzf --select-1 --query "$1"
return
fi
select project in $(_get_projects); do
echo "${project}"
done
}
function _pp_comp() {
_init_completion || return
local cur prev words cword
COMPREPLY=( compgen -W "$(_get_projects)" -- "${cur}" )
} && complete -F _pp_comp pp cdp
_pp "$*"