diff options
author | Gabriel F. T. Gomes <gabriel@inconstante.net.br> | 2019-08-07 09:17:13 -0300 |
---|---|---|
committer | Gabriel F. T. Gomes <gabriel@inconstante.net.br> | 2019-08-07 09:17:13 -0300 |
commit | 5732da2af736c40cf693354485446ab4867ecb4d (patch) | |
tree | 76d76cdfa16ca62d20fb109da13895ec64fff110 /completions/rpm | |
parent | 9cd22d1df8f0f5b554858471c86faa9f37b8fed4 (diff) | |
download | bash-completion-5732da2af736c40cf693354485446ab4867ecb4d.tar.gz |
New upstream version 2.9upstream/2.9
Diffstat (limited to 'completions/rpm')
-rw-r--r-- | completions/rpm | 109 |
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 |