$ git clone -q https://github.com/biox/pa.git
$ cd pa/contrib
$ ls -1 -p
pa-bemenu
pa-completion.bash
pa-completion.fish
pa-dmenu
pa-fuzzel
pa-pass
pa-rekey
pa-rofi
pa-ssg
pa-urn
pa-wmenu
$ nl -b a -s ' ' -w 3 pa-completion.bash
1 2 3 4 5 6 7 8 9 10 11 12 13 14
_pa() {
[[ $COMP_CWORD -ne 2 ]] && return
names=()
while read -r name; do names+=("${name@Q}"); done < <(case "${COMP_WORDS[1]}" in
[des]*) pa l ;;
l*) pa l | sed 's/[^/]\+$//' | grep '/$' | sort -u ;;
esac)
mapfile -t COMPREPLY < <(compgen -W "${names[*]}" -- "${COMP_WORDS[2]}")
}
complete -o filenames -F _pa pa