--- /root/_pacman.orig 2007-09-27 18:33:16.000000000 +0200 +++ _pacman 2007-10-01 18:31:15.000000000 +0200 @@ -214,43 +214,57 @@ _pacman_completions_all_groups() { local -a cmd groups _pacman_get_command - groups=( $(_call_program groups $cmd[@] -Sg | grep -e \^$PREFIX) ) + groups=( $(_call_program groups $cmd[@] -Sg) ) compadd "$@" -a groups } # provides completions for packages available from repositories +# these can be specified as either 'package' or 'repository/package' _pacman_completions_all_packages() { - local -a cmd packages repositories + local -a cmd packages repositories packages_long - repositories=( $(_call_program repositories cat /etc/pacman.conf | grep "^\[" | sed "s,\(\[\|\]\),,g" | grep -v "^options" | sort -u) ) - # these can be specified as either 'package' or 'repository/package' - if [[ "$PREFIX" == "" ]] ; then - packages=( $(_call_program packages ls /var/lib/pacman/${^repositories} | grep -v "^/" | sed "s,\-[^-]*\-[^-]*$,," | sort -u) ) + repositories=(${(o)${${${(M)${(f)"$(