90 lines
1.4 KiB
Bash
90 lines
1.4 KiB
Bash
#!/hint/bash
|
|
# License: Unspecified
|
|
|
|
_devtools_compgen() {
|
|
local i r
|
|
COMPREPLY=($(compgen -W '$*' -- "$cur"))
|
|
for ((i=1; i < ${#COMP_WORDS[@]}-1; i++)); do
|
|
for r in "${!COMPREPLY[@]}"; do
|
|
if [[ ${COMP_WORDS[i]} = "${COMPREPLY[r]}" ]]; then
|
|
unset 'COMPREPLY[r]'; break
|
|
fi
|
|
done
|
|
done
|
|
}
|
|
|
|
_archco_pkg() {
|
|
_devtools_compgen "$(
|
|
command pacman "-$1"
|
|
)"
|
|
}
|
|
|
|
_archco() {
|
|
local cur prev
|
|
COMPREPLY=()
|
|
cur=$(_get_cword)
|
|
prev=${COMP_WORDS[COMP_CWORD-1]}
|
|
|
|
_archco_pkg Slq
|
|
true
|
|
} &&
|
|
complete -F _archco archco communityco
|
|
|
|
_makechrootpkg() {
|
|
local cur
|
|
COMPREPLY=()
|
|
_get_comp_words_by_ref cur
|
|
|
|
case $cur in
|
|
-*)
|
|
COMPREPLY=( $( compgen -W '-I -c -h -l -r -u' -- "$cur" ) )
|
|
;;
|
|
*)
|
|
_filedir
|
|
return 0
|
|
;;
|
|
esac
|
|
|
|
true
|
|
} &&
|
|
complete -F _makechrootpkg makechrootpkg
|
|
|
|
_mkarchroot() {
|
|
local cur
|
|
COMPREPLY=()
|
|
_get_comp_words_by_ref cur
|
|
|
|
case $cur in
|
|
-*)
|
|
COMPREPLY=( $( compgen -W '-C -M -c -h' -- "$cur" ) )
|
|
;;
|
|
*)
|
|
_filedir
|
|
return 0
|
|
;;
|
|
esac
|
|
|
|
true
|
|
} &&
|
|
complete -F _mkarchroot mkarchroot
|
|
|
|
_arch-nspawn() {
|
|
local cur
|
|
COMPREPLY=()
|
|
_get_comp_words_by_ref cur
|
|
|
|
case $cur in
|
|
-*)
|
|
COMPREPLY=( $( compgen -W '-C -M -c -h' -- "$cur" ) )
|
|
;;
|
|
*)
|
|
_filedir
|
|
return 0
|
|
;;
|
|
esac
|
|
|
|
true
|
|
} &&
|
|
complete -F _arch-nspawn arch-nspawn
|
|
# ex:et ts=2 sw=2 ft=sh
|