deps() { if [[ -f yarn.lock ]]; then yarn list --pattern "@arf/|@arjs/|@dt/|@grapecity/|@mescius/|barcodejs|js-expressions" --depth=0 -s elif [[ -f pnpm-lock.yaml ]]; then pnpm list @arf/* @arjs/* @dt/* @grapecity/* @mescius/* barcodejs js-expressions elif [[ -f package-lock.json ]]; then echo "NPM does not support dependencies filtering, here's the full list:" npm list else echo "No package manager in this directory" return 1 fi } # opens PR on bitbucket bb() { repoUrl=$(npm repo --browser=false | grep http) branch=$(git rev-parse --abbrev-ref HEAD | jq -sRr @uri) xdg-open "$repoUrl/pull-requests/new?source=$branch" } # git -C $line describe --tags HEAD [latest tag] # git -C $line tag --points-at HEAD [latest tagS] # shows project list lsproj() { ls | while read line; do { fill_count=$((32 - ${#line})) filler=$(repeat $fill_count printf "·") is_git_repo=$(git -C $line rev-parse --abbrev-ref HEAD 2> /dev/null) if [[ $is_git_repo ]] { project_dir="%B%K{green} $line $filler %k%b" branch=" %F{blue} $(git -C $line rev-parse --abbrev-ref HEAD)%f" tag=$(git -C $line describe --tags HEAD 2> /dev/null) print -P "$project_dir$branch [$tag]"; } } done } lsproj_watch() { while true; do { output=$(lsproj) clear; print $output; sleep 1; } done; }