#compdef pcd psd local pkgsrcdir if [[ -n "${PKGSRCDIR}" ]]; then pkgsrcdir="${PKGSRCDIR}" else local -a candidates=( "/usr/pkgsrc" "/opt/pkgsrc" ) local dir for dir in "${candidates[@]}"; do if [[ -d "$dir" ]]; then pkgsrcdir="$dir" break fi done if [[ -z "$pkgsrcdir" ]]; then echo >&2 "PKGSRCDIR not detected" return 1 fi fi _arguments '1:directory:_files -/ -W '"$pkgsrcdir" # Local Variables: # mode: sh # sh-shell: zsh # End: