summaryrefslogtreecommitdiff
path: root/completions/rpm
diff options
context:
space:
mode:
Diffstat (limited to 'completions/rpm')
-rw-r--r--completions/rpm109
1 files changed, 54 insertions, 55 deletions
diff --git a/completions/rpm b/completions/rpm
index 6b4e66fa..b797e9fb 100644
--- a/completions/rpm
+++ b/completions/rpm
@@ -7,38 +7,38 @@ _rpm_installed_packages()
if [[ -r /var/log/rpmpkgs && \
/var/log/rpmpkgs -nt /var/lib/rpm/Packages ]]; then
# using RHL 7.2 or later - this is quicker than querying the DB
- COMPREPLY=( $( compgen -W "$( command sed -ne \
+ COMPREPLY=( $(compgen -W "$(command sed -ne \
's|^\([^[:space:]]\{1,\}\)-[^[:space:]-]\{1,\}-[^[:space:]-]\{1,\}\.rpm$|\1|p' \
- /var/log/rpmpkgs )" -- "$cur" ) )
+ /var/log/rpmpkgs)" -- "$cur") )
elif type rpmqpack &>/dev/null ; then
# SUSE's rpmqpack is faster than rpm -qa
- COMPREPLY=( $( compgen -W '$( rpmqpack )' -- "$cur" ) )
+ COMPREPLY=( $(compgen -W '$(rpmqpack)' -- "$cur") )
else
- COMPREPLY=( $( ${1:-rpm} -qa --nodigest --nosignature \
- --queryformat='%{NAME} ' "$cur*" 2>/dev/null ) )
+ COMPREPLY=( $(${1:-rpm} -qa --nodigest --nosignature \
+ --queryformat='%{NAME} ' "$cur*" 2>/dev/null) )
fi
}
_rpm_groups()
{
local IFS=$'\n'
- COMPREPLY=( $( compgen -W "$( ${1:-rpm} -qa --nodigest --nosignature \
- --queryformat='%{GROUP}\n' 2>/dev/null )" -- "$cur" ) )
+ COMPREPLY=( $(compgen -W "$(${1:-rpm} -qa --nodigest --nosignature \
+ --queryformat='%{GROUP}\n' 2>/dev/null)" -- "$cur") )
}
_rpm_macros()
{
# get a list of macros
- COMPREPLY=( $( compgen -W "$( ${1:-rpm} --showrc | command sed -ne \
- 's/^-\{0,1\}[0-9]\{1,\}[:=][[:space:]]\{1,\}\([^[:space:](]\{3,\}\).*/%\1/p' )" \
- -- "$cur" ) )
+ COMPREPLY=( $(compgen -W "$(${1:-rpm} --showrc | command sed -ne \
+ 's/^-\{0,1\}[0-9]\{1,\}[:=][[:space:]]\{1,\}\([^[:space:](]\{3,\}\).*/%\1/p')" \
+ -- "$cur") )
}
_rpm_buildarchs()
{
- COMPREPLY=( $( compgen -W "$( ${1:-rpm} --showrc | command sed -ne \
- 's/^\s*compatible\s\s*build\s\s*archs\s*:\s*\(.*\)/\1/ p' )" \
- -- "$cur" ) )
+ COMPREPLY=( $(compgen -W "$(${1:-rpm} --showrc | command sed -ne \
+ 's/^\s*compatible\s\s*build\s\s*archs\s*:\s*\(.*\)/\1/ p')" \
+ -- "$cur") )
}
# rpm(8) completion
@@ -52,32 +52,31 @@ _rpm()
# first parameter on line
case $cur in
--*)
- COMPREPLY=( $( compgen -W '--help --version --initdb
+ COMPREPLY=( $(compgen -W '--help --version --initdb
--checksig --addsign --delsign --rebuilddb --showrc
--setperms --setugids --eval --install --upgrade --query
--freshen --erase --verify --querytags --import' \
- -- "$cur" ) )
+ -- "$cur") )
;;
*)
- COMPREPLY=( $( compgen -W '-e -E -F -i -q -t -U -V' \
- -- "$cur" ) )
+ COMPREPLY=( $(compgen -W '-e -E -F -i -q -t -U -V' -- "$cur") )
;;
esac
return
fi
case $prev in
- --dbpath|--excludepath|--prefix|--relocate|--root|-r)
+ --dbpath|--excludepath|--prefix|--relocate|--root|-!(-*)r)
_filedir -d
return
;;
- --eval|-E)
+ --eval|-!(-*)E)
_rpm_macros $1
return
;;
--pipe)
compopt -o filenames
- COMPREPLY=( $( compgen -c -- "$cur" ) )
+ COMPREPLY=( $(compgen -c -- "$cur") )
return
;;
--rcfile)
@@ -104,13 +103,13 @@ _rpm()
*suggests) fmt=SUGGESTNAME ;;
*supplements) fmt=SUPPLEMENTNAME ;;
esac
- COMPREPLY=( $( compgen -W "$( $1 -qa --nodigest --nosignature \
+ COMPREPLY=( $(compgen -W "$($1 -qa --nodigest --nosignature \
--queryformat=\"%{$fmt}\\n\" 2>/dev/null |
- command grep -vF '(none)' )" -- "$cur" ) )
+ command grep -vF '(none)')" -- "$cur") )
fi
return
;;
- --define|-D|--fileid|--hdrid|--pkgid)
+ --define|--fileid|--hdrid|--pkgid|-!(-*)D)
# argument required but no completions available
return
;;
@@ -125,21 +124,21 @@ _rpm()
case ${words[1]} in
-[iFU]*|--install|--freshen|--upgrade)
if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W "$opts --percent --force --test
+ COMPREPLY=( $(compgen -W "$opts --percent --force --test
--replacepkgs --replacefiles --root --excludedocs --includedocs
--noscripts --ignorearch --dbpath --prefix= --ignoreos --nodeps
--allfiles --ftpproxy --ftpport --justdb --httpproxy --httpport
--noorder --relocate= --badreloc --notriggers --excludepath=
--ignoresize --oldpackage --queryformat --repackage
- --nosuggests" -- "$cur" ) )
+ --nosuggests" -- "$cur") )
else
_filedir '[rs]pm'
fi
;;
-e|--erase)
if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W "$opts --allmatches --noscripts
- --notriggers --nodeps --test --repackage" -- "$cur" ) )
+ COMPREPLY=( $(compgen -W "$opts --allmatches --noscripts
+ --notriggers --nodeps --test --repackage" -- "$cur") )
else
_rpm_installed_packages $1
fi
@@ -151,64 +150,64 @@ _rpm()
--fileprovide --filerequire --filesbypkg --info --list
--obsoletes --pipe --provides --queryformat= --requires
--scripts --suggests --triggers --xml --recommends
- --supplements --filetriggers"
+ --supplements --filetriggers --licensefiles"
- if [[ ${words[@]} == *\ -@(*([^ -])f|-file )* ]]; then
+ if [[ "${words[*]}" == *\ -@(*([^ -])f|-file )* ]]; then
# -qf completion
if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W "$opts --dbpath --fscontext
- --last --root --state" -- "$cur" ) )
+ COMPREPLY=( $(compgen -W "$opts --dbpath --fscontext
+ --last --root --state" -- "$cur") )
else
_filedir
fi
- elif [[ ${words[@]} == *\ -@(*([^ -])g|-group )* ]]; then
+ elif [[ "${words[*]}" == *\ -@(*([^ -])g|-group )* ]]; then
# -qg completion
_rpm_groups $1
- elif [[ ${words[@]} == *\ -@(*([^ -])p|-package )* ]]; then
+ elif [[ "${words[*]}" == *\ -@(*([^ -])p|-package )* ]]; then
# -qp; uninstalled package completion
if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W "$opts --ftpport --ftpproxy
- --httpport --httpproxy --nomanifest" -- "$cur" ) )
+ COMPREPLY=( $(compgen -W "$opts --ftpport --ftpproxy
+ --httpport --httpproxy --nomanifest" -- "$cur") )
else
_filedir '[rs]pm'
fi
else
# -q; installed package completion
if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W "$opts --all --file --fileid
+ COMPREPLY=( $(compgen -W "$opts --all --file --fileid
--dbpath --fscontext --ftswalk --group --hdrid --last
--package --pkgid --root= --specfile --state
--triggeredby --whatenhances --whatprovides
--whatrecommends --whatrequires --whatsuggests
--whatsupplements" \
- -- "$cur" ) )
- elif [[ ${words[@]} != *\ -@(*([^ -])a|-all )* ]]; then
+ -- "$cur") )
+ elif [[ "${words[*]}" != *\ -@(*([^ -])a|-all )* ]]; then
_rpm_installed_packages $1
fi
fi
;;
-K*|--checksig)
if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W "$opts --nopgp --nogpg --nomd5" \
- -- "$cur" ) )
+ COMPREPLY=( $(compgen -W "$opts --nopgp --nogpg --nomd5" \
+ -- "$cur") )
else
_filedir '[rs]pm'
fi
;;
-[Vy]*|--verify)
if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W "$opts --root= --dbpath --nodeps
+ COMPREPLY=( $(compgen -W "$opts --root= --dbpath --nodeps
--nogroup --nolinkto --nomode --nomtime --nordev --nouser
--nofiles --noscripts --nomd5 --querytags --specfile
--whatenhances --whatprovides --whatrecommends
--whatrequires --whatsuggests --whatsupplements" \
- -- "$cur" ) )
+ -- "$cur") )
# check whether we're doing file completion
- elif [[ ${words[@]} == *\ -@(*([^ -])f|-file )* ]]; then
+ elif [[ "${words[*]}" == *\ -@(*([^ -])f|-file )* ]]; then
_filedir
- elif [[ ${words[@]} == *\ -@(*([^ -])g|-group )* ]]; then
+ elif [[ "${words[*]}" == *\ -@(*([^ -])g|-group )* ]]; then
_rpm_groups $1
- elif [[ ${words[@]} == *\ -@(*([^ -])p|-package )* ]]; then
+ elif [[ "${words[*]}" == *\ -@(*([^ -])p|-package )* ]]; then
_filedir '[rs]pm'
else
_rpm_installed_packages $1
@@ -222,8 +221,8 @@ _rpm()
;;
--import|--dbpath|--root)
if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W '--import --dbpath --root=' \
- -- "$cur" ) )
+ COMPREPLY=( $(compgen -W '--import --dbpath --root=' \
+ -- "$cur") )
else
_filedir
fi
@@ -242,7 +241,7 @@ _rpmbuild()
[[ $rpm == $1 ]] || ! type $rpm &>/dev/null && rpm=
case $prev in
- --buildroot|--root|-r|--dbpath)
+ --buildroot|--root|--dbpath|-!(-*)r)
_filedir -d
return
;;
@@ -250,7 +249,7 @@ _rpmbuild()
_rpm_buildarchs
return
;;
- --eval|-E)
+ --eval|-!(-*)E)
_rpm_macros $rpm
return
;;
@@ -259,13 +258,13 @@ _rpmbuild()
return
;;
--buildpolicy)
- local cfgdir=$( $rpm --eval '%{_rpmconfigdir}' 2>/dev/null )
+ local cfgdir=$($rpm --eval '%{_rpmconfigdir}' 2>/dev/null)
if [[ $cfgdir ]]; then
- COMPREPLY=( $( compgen -W "$( command ls $cfgdir 2>/dev/null \
- | command sed -ne 's/^brp-//p' )" -- "$cur" ) )
+ COMPREPLY=( $(compgen -W "$(command ls $cfgdir 2>/dev/null \
+ | command sed -ne 's/^brp-//p')" -- "$cur") )
fi
;;
- --define|-D|--with|--without)
+ --define|--with|--without|-!(-*)D)
return
;;
esac
@@ -273,14 +272,14 @@ _rpmbuild()
$split && return
if [[ $cur == -* ]]; then
- COMPREPLY=( $( compgen -W "$( _parse_help "$1" )" -- "$cur" ) )
+ COMPREPLY=( $(compgen -W "$(_parse_help "$1")" -- "$cur") )
[[ $COMPREPLY == *= ]] && compopt -o nospace
return
fi
# Figure out file extensions to complete
local word ext
- for word in ${words[@]}; do
+ for word in "${words[@]}"; do
case $word in
-b?|--clean|--nobuild)
ext=spec