summaryrefslogtreecommitdiff
path: root/completions
diff options
context:
space:
mode:
Diffstat (limited to 'completions')
-rw-r--r--completions/.gitignore4
-rw-r--r--completions/Makefile.am15
-rw-r--r--completions/ccache26
-rw-r--r--completions/cppcheck14
-rw-r--r--completions/curl16
-rw-r--r--completions/dict13
-rw-r--r--completions/export60
-rw-r--r--completions/fbgs4
-rw-r--r--completions/fbi17
-rw-r--r--completions/feh12
-rw-r--r--completions/function2
-rw-r--r--completions/iperf63
-rw-r--r--completions/kcov12
-rw-r--r--completions/koji234
-rw-r--r--completions/lintian7
-rw-r--r--completions/lrzip4
-rw-r--r--completions/lzip44
-rw-r--r--completions/mutt2
-rw-r--r--completions/nethogs25
-rw-r--r--completions/perl12
-rw-r--r--completions/removepkg13
-rw-r--r--completions/rpm2
-rw-r--r--completions/rpm2tgz6
-rw-r--r--completions/sbopkg24
-rw-r--r--completions/slackpkg46
-rw-r--r--completions/slapt-get20
-rw-r--r--completions/slapt-src18
-rw-r--r--completions/sqlite34
-rw-r--r--completions/upgradepkg8
-rw-r--r--completions/valgrind104
-rw-r--r--completions/wine4
-rw-r--r--completions/xgamma17
-rw-r--r--completions/xhost2
-rw-r--r--completions/xrandr48
34 files changed, 737 insertions, 165 deletions
diff --git a/completions/.gitignore b/completions/.gitignore
index 713d825e..4e86f85c 100644
--- a/completions/.gitignore
+++ b/completions/.gitignore
@@ -3,6 +3,7 @@ alpine
alternatives
animate
apropos
+arm-koji
asciidoc.py
autoheader
automake-1.11
@@ -104,6 +105,7 @@ pm-suspend
pm-suspend-hybrid
pmake
postalias
+ppc-koji
puppetca
puppetd
puppetdoc
@@ -133,6 +135,7 @@ rpm2targz
rpm2txz
rpmbuild
rpmbuild-md5
+s390-koji
sbcl-mt
scp
sdptool
@@ -145,6 +148,7 @@ smbget
smbpasswd
smbtar
smbtree
+sparc-koji
spovray
stream
tightvncviewer
diff --git a/completions/Makefile.am b/completions/Makefile.am
index d35fe00b..797fc88c 100644
--- a/completions/Makefile.am
+++ b/completions/Makefile.am
@@ -28,6 +28,7 @@ bashcomp_DATA = a2x \
cal \
cancel \
cardctl \
+ ccache \
cfagent \
cfrun \
chage \
@@ -115,6 +116,7 @@ bashcomp_DATA = a2x \
hping2 \
htpasswd \
iconv \
+ id \
idn \
iftop \
ifup \
@@ -125,6 +127,7 @@ bashcomp_DATA = a2x \
invoke-rc.d \
ionice \
ip \
+ iperf \
iptables \
ipmitool \
ipsec \
@@ -146,6 +149,7 @@ bashcomp_DATA = a2x \
killall \
kldload \
kldunload \
+ koji \
ktutil \
larch \
lastlog \
@@ -167,6 +171,7 @@ bashcomp_DATA = a2x \
lrzip \
lsof \
lvm \
+ lzip \
lzma \
lzop \
macof \
@@ -199,6 +204,7 @@ bashcomp_DATA = a2x \
mysql \
mysqladmin \
ncftp \
+ nethogs \
newgrp \
newlist \
newusers \
@@ -303,6 +309,7 @@ bashcomp_DATA = a2x \
useradd \
userdel \
usermod \
+ valgrind \
vipw \
vncviewer \
vpnc \
@@ -339,6 +346,7 @@ CLEANFILES = \
alternatives \
animate \
apropos \
+ arm-koji \
asciidoc.py \
autoheader \
automake-1.11 \
@@ -440,6 +448,7 @@ CLEANFILES = \
pm-suspend-hybrid \
pmake \
postalias \
+ ppc-koji \
puppetca \
puppetd \
puppetdoc \
@@ -469,6 +478,7 @@ CLEANFILES = \
rpm2txz \
rpmbuild \
rpmbuild-md5 \
+ s390-koji \
sbcl-mt \
scp \
sdptool \
@@ -481,6 +491,7 @@ CLEANFILES = \
smbpasswd \
smbtar \
smbtree \
+ sparc-koji \
spovray \
stream \
tightvncviewer \
@@ -632,6 +643,10 @@ symlinks:
rm -f $(targetdir)/$$file && \
$(LN_S) killall $(targetdir)/$$file ; \
done
+ for file in arm-koji ppc-koji s390-koji sparc-koji ; do \
+ rm -f $(targetdir)/$$file && \
+ $(LN_S) koji $(targetdir)/$$file ; \
+ done
for file in ldapadd ldapmodify ldapdelete ldapcompare ldapmodrdn \
ldapwhoami ldappasswd ; do \
rm -f $(targetdir)/$$file && \
diff --git a/completions/ccache b/completions/ccache
new file mode 100644
index 00000000..63f5a1c6
--- /dev/null
+++ b/completions/ccache
@@ -0,0 +1,26 @@
+# ccache(1) completion -*- shell-script -*-
+
+_ccache()
+{
+ local cur prev words cword split
+ _init_completion -s || return
+
+ if [[ $COMP_CWORD -eq 1 && ${COMP_WORDS[COMP_CWORD]} != -* ]]; then
+ _command_offset 1
+ return
+ fi
+
+ case $prev in
+ -h|--help|-V|--version|-F|--max-files|-M|--max-size)
+ return
+ ;;
+ esac
+
+ $split && return
+
+ COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$cur" ) )
+ [[ $COMPREPLY == *= ]] && compopt -o nospace
+} &&
+complete -F _ccache ccache
+
+# ex: ts=4 sw=4 et filetype=sh
diff --git a/completions/cppcheck b/completions/cppcheck
index 465f40d2..d3c7a422 100644
--- a/completions/cppcheck
+++ b/completions/cppcheck
@@ -7,16 +7,24 @@ _cppcheck()
case $prev in
--append|--exitcode-suppressions|--file-list|--rule-file|\
- --suppressions-list|-i)
+ --suppressions-list|--includes-file|-i)
_filedir
return
;;
- -D|--rule|--suppress|--template)
+ -D|-U|--rule|--suppress|--template|--max-configs)
return
;;
--enable)
+ # split comma-separated list
+ split=false
+ if [[ "$cur" == ?*,* ]]; then
+ prev="${cur%,*}"
+ cur="${cur##*,}"
+ split=true
+ fi
COMPREPLY=( $( compgen -W 'all style performance portability
information unusedFunction missingInclude' -- "$cur" ) )
+ $split && COMPREPLY=( ${COMPREPLY[@]/#/"$prev,"} )
return
;;
--error-exitcode)
@@ -32,7 +40,7 @@ _cppcheck()
return
;;
--std)
- COMPREPLY=( $( compgen -W 'c99 posix' -- "$cur" ) )
+ COMPREPLY=( $( compgen -W 'c99 c++11 posix' -- "$cur" ) )
return
;;
--platform)
diff --git a/completions/curl b/completions/curl
index f0fc6acf..6b56aa57 100644
--- a/completions/curl
+++ b/completions/curl
@@ -6,18 +6,20 @@ _curl()
_init_completion || return
case $prev in
- --ciphers|--connect-timeout|-C|--continue-at|--form|--form-string|\
+ --ciphers|--connect-timeout|-C|--continue-at|-F|--form|--form-string|\
--ftp-account|--ftp-alternative-to-user|-P|--ftp-port|-H|--header|-h|\
--help|--hostpubmd5|--keepalive-time|--krb|--limit-rate|--local-port|\
--mail-from|--mail-rcpt|--max-filesize|--max-redirs|-m|--max-time|\
--pass|--proto|--proto-redir|--proxy-user|--proxy1.0|-Q|--quote|-r|\
--range|-X|--request|--retry|--retry-delay|--retry-max-time|\
--socks5-gssapi-service|-t|--telnet-option|--tftp-blksize|-z|\
- --time-cond|--url|-u|--user|-A|--user-agent|-V|--version|-w|--write-out)
+ --time-cond|--url|-u|--user|-A|--user-agent|-V|--version|-w|\
+ --write-out|--resolve|--tlsuser|--tlspassword)
return
;;
-K|--config|-b|--cookie|-c|--cookie-jar|-D|--dump-header|--egd-file|\
- --key|--libcurl|-o|--output|--random-file|-T|--upload-file)
+ --key|--libcurl|-o|--output|--random-file|-T|--upload-file|--trace|\
+ --trace-ascii|--netrc-file)
_filedir
return
;;
@@ -45,6 +47,10 @@ _curl()
fi
return
;;
+ --delegation)
+ COMPREPLY=( $( compgen -W 'none policy always' -- "$cur" ) )
+ return
+ ;;
--engine)
COMPREPLY=( $( compgen -W 'list' -- "$cur" ) )
return
@@ -74,6 +80,10 @@ _curl()
_filedir
return
;;
+ --tlsauthtype)
+ COMPREPLY=( $( compgen -W 'SRP' -- "$cur" ) )
+ return
+ ;;
esac
if [[ $cur == -* ]]; then
diff --git a/completions/dict b/completions/dict
index 3caedf76..a2ecd9b1 100644
--- a/completions/dict
+++ b/completions/dict
@@ -54,8 +54,17 @@ _dict()
esac
local dictfile=/usr/share/dict/words
- [[ -r $dictfile ]] && \
- COMPREPLY=( $( compgen -W '$( cat $dictfile )' -- "$cur" ) )
+ if [[ -r $dictfile ]]; then
+ # Dictfile may be too large for practical compgen -W usage, so narrow
+ # it down with grep if $cur looks like something that's safe to embed
+ # in a pattern instead.
+ if [[ $cur == +([-A-Za-z0-9/.]) ]]; then
+ COMPREPLY=( $( compgen -W \
+ '$( command grep "^${cur//./\\.}" $dictfile )' -- "$cur" ) )
+ else
+ COMPREPLY=( $( compgen -W '$( cat $dictfile )' -- "$cur" ) )
+ fi
+ fi
} &&
complete -F _dict -o default dict rdict
diff --git a/completions/export b/completions/export
index 557c52cb..42273a9e 100644
--- a/completions/export
+++ b/completions/export
@@ -3,23 +3,59 @@
_export()
{
local cur prev words cword
- _init_completion || return
+ _init_completion -n = || return
- case ${words[@]} in
- *=\$*)
- COMPREPLY=( $( compgen -v -P '$' -- "${cur#*=\$}" ) )
+ local i action=variable remove=false
+ for (( i=1; i < cword; i++ )); do
+ case ${words[i]} in
+ -p)
+ return
+ ;;
+ -*f*)
+ action=function
+ ;;&
+ -*n*)
+ remove=true
+ ;;
+ -*)
+ continue
+ ;;
+ esac
+ break
+ done
+
+ [[ $cur == *=\$* ]] && { cur=${cur#*=}; _variables; } && return
+
+ case $cur in
+ *=)
+ local pval=$( quote "$( eval printf %s \"\$${cur%=}\" )" )
+ # Complete previous value if it's not empty.
+ if [[ $pval != \'\' ]]; then
+ COMPREPLY=( "$pval" )
+ else
+ cur=${cur#*=}
+ _filedir
+ fi
;;
- *[^=])
- COMPREPLY=( $( compgen -v -S '=' -- "$cur" ) )
+ *=*)
+ cur=${cur#*=}
+ _filedir
;;
- *=)
- COMPREPLY=( "$( eval echo -n \"$`echo ${cur%=}`\" |
- ( echo -n \'
- sed -e 's/'\''/'\''\\\'\'''\''/g'
- echo -n \' ) )" )
+ *)
+ if [[ $cword -eq 1 && $cur == -* ]]; then
+ COMPREPLY=( $( compgen -W \
+ '-p $( _parse_usage "$1" )' -- "$cur" ) )
+ return
+ fi
+ local suffix
+ if ! $remove; then
+ suffix+==
+ compopt -o nospace
+ fi
+ COMPREPLY=( $( compgen -A $action -S "$suffix" -- "$cur" ) )
;;
esac
} &&
-complete -F _export -o default -o nospace export
+complete -F _export export
# ex: ts=4 sw=4 et filetype=sh
diff --git a/completions/fbgs b/completions/fbgs
index 672de7cd..93dbe392 100644
--- a/completions/fbgs
+++ b/completions/fbgs
@@ -28,8 +28,8 @@ _fbgs()
esac
if [[ "$cur" == -* ]]; then
- COMPREPLY=( $(compgen -W '-l -xl -xxl -a --fitwidth -d -m -t -g -f -p \
- -h -c' -- "$cur") )
+ COMPREPLY=( $( compgen -W '-l -xl -xxl -a --fitwidth -d -m -t -g -f -p
+ -h -c' -- "$cur" ) )
[[ $COMPREPLY ]] && return
fi
diff --git a/completions/fbi b/completions/fbi
index f8f7a825..9516247b 100644
--- a/completions/fbi
+++ b/completions/fbi
@@ -11,12 +11,12 @@ _fbi()
return
;;
-r|--resolution)
- COMPREPLY+=( $(compgen -W '{1..5}') )
+ COMPREPLY+=( $( compgen -W '{1..5}' ) )
return
;;
-f|--font)
local IFS=$'\n'
- COMPREPLY=( $( compgen -W '$( fc-list 2>/dev/null )' -- "$cur" ) )
+ COMPREPLY=( $( compgen -W '$( fc-list 2> /dev/null )' -- "$cur" ) )
return
;;
-m|--mode)
@@ -36,13 +36,12 @@ _fbi()
esac
if [[ "$cur" == -* ]]; then
- COMPREPLY=( $(compgen -W '--help --version --store --list --text \
- --autozoom --autoup --noautoup --autodown --noautodown --fitwidth \
- --nofitwidth --verbose --noverbose --random --norandom --comments \
- --nocomments --edit --noedit --backup --nobackup --preserve \
- --nopreserve --readahead --noreadahead --cachemem --blend --vt \
- --scroll --timeout --once --noonce --resolution --gamma --font \
- --device --mode' -- "$cur") )
+ COMPREPLY=( $( compgen -W '--help --version --store --list --text
+ --autozoom --{,no}autoup --{,no}autodown --{,no}fitwidth
+ --{,no}verbose --{,no}random --{,no}comments --{,no}edit
+ --{,no}backup --{,no}preserve --{,no}readahead --cachemem --blend
+ --vt --scroll --timeout --{,no}once --resolution --gamma --font
+ --device --mode' -- "$cur" ) )
[[ $COMPREPLY ]] && return
fi
diff --git a/completions/feh b/completions/feh
index 556fc13e..0f34f94b 100644
--- a/completions/feh
+++ b/completions/feh
@@ -25,12 +25,12 @@ _feh()
-e|--font|-M|--menu-font|-@|--title-font)
# expect string like "dejavu.ttf/12"
if [[ "$cur" == */* ]]; then # expect integer value
- COMPREPLY=( $(compgen -P "$cur" -W '{0..9}') )
+ COMPREPLY=( $( compgen -P "$cur" -W '{0..9}' ) )
compopt -o nospace
return
fi
local font_path
- # font_path="$(imlib2-config --prefix 2> /dev/null)/share/imlib2/data/fonts"
+ # font_path="$( imlib2-config --prefix 2> /dev/null )/share/imlib2/data/fonts"
# COMPREPLY=( $( cd "$font_path" 2> /dev/null; compgen -f \
# -X "!*.@([tT][tT][fF])" -S / -- "$cur" ) )
for (( i=${#words[@]}-1; i>0; i-- )); do
@@ -63,15 +63,15 @@ _feh()
-R|--reload|-H|--limit-height|-W|--limit-width|-E|--thumb-height|\
-y|--thumb-width|-J|--thumb-redraw)
# expect integer value
- COMPREPLY+=( $(compgen -W '{0..9}') )
+ COMPREPLY+=( $( compgen -W '{0..9}' ) )
compopt -o nospace
return
;;
--zoom)
# expect integer value or "max", "fill"
- COMPREPLY=( $(compgen -W 'max fill' -- "$cur") )
+ COMPREPLY=( $( compgen -W 'max fill' -- "$cur" ) )
if [[ ! $cur || ! $COMPREPLY ]]; then
- COMPREPLY+=( $(compgen -W '{0..9}') )
+ COMPREPLY+=( $( compgen -W '{0..9}' ) )
compopt -o nospace
fi
return
@@ -95,7 +95,7 @@ _feh()
if [[ $cur && "$cur" != *x* ]]; then
COMPREPLY=( x )
fi
- COMPREPLY+=( $(compgen -W "{0..9}") )
+ COMPREPLY+=( $( compgen -W "{0..9}" ) )
compopt -o nospace
return
;;
diff --git a/completions/function b/completions/function
index e12fffff..e8e4d751 100644
--- a/completions/function
+++ b/completions/function
@@ -9,7 +9,7 @@ _function()
if [[ $prev == -f ]]; then
COMPREPLY=( $( compgen -A function -- "$cur" ) )
elif [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W '-a -f -F -i -r -x -p' -- "$cur" ) )
+ COMPREPLY=( $( compgen -W '$( _parse_usage "$1" )' -- "$cur" ) )
fi
elif [[ $cword -eq 1 ]]; then
COMPREPLY=( $( compgen -A function -- "$cur" ) )
diff --git a/completions/iperf b/completions/iperf
new file mode 100644
index 00000000..721825e2
--- /dev/null
+++ b/completions/iperf
@@ -0,0 +1,63 @@
+# iperf(1) completion -*- shell-script -*-
+
+_iperf()
+{
+ local cur prev words cword split
+ _init_completion -s || return
+
+ case $prev in
+ -h|--help|-v|--version|-i|--interval|-l|--len|-p|--port|-w|--window|\
+ -M|--mss|-b|--bandwidth|-n|--num|-t|--time|-L|--listenport|-P|\
+ --parallel|-T|--ttl|-Z|--linux-congestion)
+ return
+ ;;
+ -f|--format)
+ COMPREPLY=( $( compgen -W 'k m K M' -- "$cur" ) )
+ return
+ ;;
+ -o|--output|-F|--fileinput)
+ _filedir
+ return
+ ;;
+ -B|--bind)
+ _available_interfaces -a
+ _ip_addresses
+ return
+ ;;
+ -c|--client)
+ _known_hosts_real "$cur"
+ return
+ ;;
+ -x|--reportexclude)
+ COMPREPLY=( $( compgen -W 'C D M S V' -- "$cur" ) )
+ return
+ ;;
+ -y|--reportstyle)
+ COMPREPLY=( $( compgen -W 'C' -- "$cur" ) )
+ return
+ ;;
+ esac
+
+ $split && return
+
+ # Filter mode specific options
+ local i filter=cat
+ for i in ${words[@]}; do
+ case $i in
+ -s|--server)
+ filter='sed -e /^Client.specific/,/^$/d'
+ ;;
+ -c|--client)
+ filter='sed -e /^Server.specific/,/^$/d'
+ ;;
+ esac
+ done
+ [[ $filter != cat ]] && filter+=' -e /--client/d -e /--server/d'
+
+ COMPREPLY=( $( compgen -W \
+ '$( "$1" --help 2>&1 | $filter | _parse_help - )' -- "$cur" ) )
+ [[ $COMPREPLY == *= ]] && compopt -o nospace
+} &&
+complete -F _iperf iperf
+
+# ex: ts=4 sw=4 et filetype=sh
diff --git a/completions/kcov b/completions/kcov
index e0f37fdb..21a8eba9 100644
--- a/completions/kcov
+++ b/completions/kcov
@@ -8,29 +8,29 @@ _kcov()
case "$prev" in
--pid|-p)
_pids
- return 0
+ return
;;
--sort-type|-s)
COMPREPLY=( $( compgen -W 'filename percentage' -- "$cur" ) )
- return 0
+ return
;;
--include-path|--exclude-path)
_filedir
- return 0
+ return
;;
--limits|-l|--title|-t|--include-pattern|--exclude-pattern|\
--path-strip-level)
# argument required but no completions available
- return 0
+ return
;;
esac
- $split && return 0
+ $split && return
if [[ "$cur" == -* ]]; then
COMPREPLY=( $( compgen -W '$( _parse_help "$1" --help )' -- "$cur" ) )
[[ $COMPREPLY == *= ]] && compopt -o nospace
- return 0
+ return
fi
_filedir
diff --git a/completions/koji b/completions/koji
new file mode 100644
index 00000000..f4bdeacf
--- /dev/null
+++ b/completions/koji
@@ -0,0 +1,234 @@
+# koji completion -*- shell-script -*-
+
+_koji_search()
+{
+ COMPREPLY+=( $( compgen -W \
+ '$( "$1" -q search $2 "$cur*" 2>/dev/null )' -- "$cur" ) )
+}
+
+_koji_build()
+{
+ _koji_search "$1" build
+}
+
+_koji_package()
+{
+ _koji_search "$1" package
+}
+
+_koji_user()
+{
+ _koji_search "$1" user
+}
+
+_koji_tag()
+{
+ COMPREPLY+=( $( compgen -W '$( "$1" -q list-tags 2>/dev/null )' \
+ -- "$cur" ) )
+}
+
+_koji_target()
+{
+ COMPREPLY+=( $( compgen -W '$( "$1" -q list-targets 2>/dev/null |
+ awk "{ print \$1 }" )' -- "$cur" ) )
+}
+
+_koji()
+{
+ local cur prev words cword split
+ _init_completion -s || return
+
+ local commandix command
+ for (( commandix=1; commandix < cword; commandix++ )); do
+ if [[ ${words[commandix]} != -* ]]; then
+ command=${words[commandix]}
+ break
+ fi
+ done
+
+ case $prev in
+ -h|--help|--help-commands)
+ return
+ ;;
+ -c|--config|--keytab|-o)
+ _filedir
+ return
+ ;;
+ --runas|--user|--editor|--by)
+ _koji_user "$1"
+ return
+ ;;
+ --authtype)
+ COMPREPLY=( $( compgen -W 'noauth ssl password kerberos' \
+ -- "$cur" ) )
+ return
+ ;;
+ --topdir)
+ _filedir -d
+ return
+ ;;
+ --type)
+ case $command in
+ latest-pkg|list-tagged)
+ COMPREPLY=( $( compgen -W 'maven' -- "$cur" ) )
+ ;;
+ esac
+ return
+ ;;
+ --name)
+ case $command in
+ list-targets)
+ _koji_target "$1"
+ ;;
+ esac
+ return
+ ;;
+ --owner)
+ _koji_user "$1"
+ return
+ ;;
+ --tag|--latestfrom)
+ _koji_tag "$1"
+ return
+ ;;
+ --package)
+ _koji_package "$1"
+ return
+ ;;
+ --build)
+ _koji_build "$1"
+ return
+ ;;
+ --build-target)
+ _koji_target "$1"
+ return
+ ;;
+ esac
+
+ $split && return
+
+ if [[ $command ]]; then
+ if [[ $cur == -* ]]; then
+ COMPREPLY=( $( compgen -W \
+ '$( _parse_help "$1" "$command --help" )' -- "$cur" ) )
+ [[ $COMPREPLY == *= ]] && compopt -o nospace
+ return
+ fi
+
+ # How many'th non-option arg (1-based) for $command are we completing?
+ local i nth=1
+ for (( i=commandix+1; i < cword; i++ )); do
+ [[ ${words[i]} == -* ]] || (( nth++ ))
+ done
+
+ case $command in
+ build|maven-build|win-build)
+ case $nth in
+ 1)
+ _koji_target "$1"
+ ;;
+ 2)
+ _filedir src.rpm
+ ;;
+ esac
+ ;;
+ cancel)
+ _koji_build "$1"
+ ;;
+ chain-build)
+ case $nth in
+ 1)
+ _koji_target "$1"
+ ;;
+ esac
+ ;;
+ download-build)
+ case $nth in
+ 1)
+ _koji_build "$1"
+ ;;
+ esac
+ ;;
+ import-comps)
+ case $nth in
+ 1)
+ _filedir xml
+ ;;
+ 2)
+ _koji_tag "$1"
+ ;;
+ esac
+ ;;
+ latest-by-tag)
+ _koji_package "$1"
+ ;;
+ latest-pkg|list-groups|list-tag-inheritance|show-groups|wait-repo)
+ case $nth in
+ 1)
+ _koji_tag "$1"
+ ;;
+ esac
+ ;;
+ list-tagged)
+ case $nth in
+ 1)
+ _koji_tag "$1"
+ ;;
+ 2)
+ _koji_package "$1"
+ ;;
+ esac
+ ;;
+ list-untagged)
+ case $nth in
+ 1)
+ _koji_package "$1"
+ ;;
+ esac
+ ;;
+ move-pkg)
+ case $nth in
+ 1|2)
+ _koji_tag "$1"
+ ;;
+ *)
+ _koji_package "$1"
+ ;;
+ esac
+ ;;
+ search)
+ case $nth in
+ 1)
+ COMPREPLY=( $( compgen -W 'package build tag target
+ user host rpm' -- "$cur" ) )
+ ;;
+ esac
+ ;;
+ tag-pkg|untag-pkg)
+ case $nth in
+ 1)
+ _koji_tag "$1"
+ ;;
+ *)
+ _koji_package "$1"
+ ;;
+ esac
+ ;;
+ taginfo)
+ _koji_tag "$1"
+ ;;
+ esac
+ return
+ fi
+
+ if [[ $cur == -* ]]; then
+ COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$cur" ) )
+ [[ $COMPREPLY == *= ]] && compopt -o nospace
+ elif [[ ! $command ]]; then
+ COMPREPLY=( $( compgen -W '$( "$1" --help-commands 2>/dev/null | \
+ awk "/^( +|\t)/ { print \$1 }" )' -- "$cur" ) )
+ fi
+} &&
+complete -F _koji koji arm-koji ppc-koji s390-koji sparc-koji
+
+# ex: ts=4 sw=4 et filetype=sh
diff --git a/completions/lintian b/completions/lintian
index 65121151..8e470758 100644
--- a/completions/lintian
+++ b/completions/lintian
@@ -10,7 +10,7 @@ _lintian_tags()
for item in $search; do
match=$(grep -nE "^Tag: $item$" /usr/share/lintian/checks/*.desc \
| cut -d: -f1 )
- tags=$( echo $tags | sed -e "s/\<$item\>//g" )
+ tags=$( sed -e "s/\<$item\>//g" <<<$tags )
done
COMPREPLY+=( $(compgen -W "$tags") )
elif [[ "$cur" == *,* ]]; then
@@ -35,7 +35,7 @@ _lintian_checks()
todisable=$(grep -e ^Check-Script -e ^Abbrev $match | \
cut -d\ -f2 )
for name in $todisable; do
- checks=$( echo $checks | sed -e "s/\<$name\>//g" )
+ checks=$( sed -e "s/\<$name\>//g" <<<$checks )
done
done
COMPREPLY+=( $(compgen -W "$checks") )
@@ -58,7 +58,7 @@ _lintian_infos()
for item in $search; do
match=$( grep -nE "^Collector: $item$" \
/usr/share/lintian/collection/*.desc | cut -d: -f1 )
- infos=$( echo $infos | sed -e "s/\<$item\>//g" )
+ infos=$( sed -e "s/\<$item\>//g" <<<$infos )
done
COMPREPLY+=( $(compgen -W "$infos") )
elif [[ "$cur" == *,* ]]; then
@@ -133,7 +133,6 @@ _lintian()
# If we're here, the user is trying to complete on
# --action tag,tag,<TAB>
# Only few actions permit that, re-complete them now.
- echo $prev
case "$prev" in
-C|--check-part|-X|--dont-check-part)
_lintian_checks
diff --git a/completions/lrzip b/completions/lrzip
index da1730aa..d4106fb2 100644
--- a/completions/lrzip
+++ b/completions/lrzip
@@ -26,10 +26,6 @@ _lrzip()
COMPREPLY=( $( compgen -W '{1..9}' -- "$cur" ) )
return 0
;;
- -T)
- COMPREPLY=( $( compgen -W '{1..10}' -- "$cur" ) )
- return 0
- ;;
-N)
COMPREPLY=( $( compgen -W '{-20..19}' -- "$cur" ) )
return 0
diff --git a/completions/lzip b/completions/lzip
new file mode 100644
index 00000000..9df55382
--- /dev/null
+++ b/completions/lzip
@@ -0,0 +1,44 @@
+# lzip(1) completion -*- shell-script -*-
+
+_lzip()
+{
+ local cur prev words cword split
+ _init_completion -s || return
+
+ local decompress=false
+
+ case $prev in
+ -h|--help|-V|--version|-b|--member-size|-m|--match-length|\
+ -s|--dictionary-size|-S|--volume-size)
+ return
+ ;;
+ -d|--decompress)
+ decompress=true
+ ;;
+ -o|--output)
+ _filedir
+ return
+ ;;
+ esac
+
+ $split && return
+
+ if [[ "$cur" == -* ]]; then
+ COMPREPLY=( $( compgen -W '$( _parse_help "$1" ) {-1..-9}' \
+ -- "$cur" ) )
+ return
+ fi
+
+ if $decompress; then
+ _filedir lz
+ return
+ fi
+
+ local IFS=$'\n'
+ compopt -o filenames
+ COMPREPLY=( $( compgen -f -X "*.lz" -- "$cur" ) \
+ $( compgen -d -- "$cur" ) )
+} &&
+complete -F _lzip lzip
+
+# ex: ts=4 sw=4 et filetype=sh
diff --git a/completions/mutt b/completions/mutt
index e840a4a9..acab9c86 100644
--- a/completions/mutt
+++ b/completions/mutt
@@ -57,7 +57,7 @@ _muttconffiles()
sofar=" $1 "
shift
while [[ "$1" ]]; do
- newconffiles=( $(sed -n 's|^source[[:space:]]\{1,\}\([^[:space:]]\{1,\}\).*$|\1|p' $(eval echo $1) ) )
+ newconffiles=( $(sed -n 's|^source[[:space:]]\{1,\}\([^[:space:]]\{1,\}\).*$|\1|p' $(eval printf %s $1) ) )
for file in "${newconffiles[@]}"; do
__expand_tilde_by_ref file
[[ ! -f "$file" || $sofar == *\ $file\ * ]] && continue
diff --git a/completions/nethogs b/completions/nethogs
new file mode 100644
index 00000000..937edf1f
--- /dev/null
+++ b/completions/nethogs
@@ -0,0 +1,25 @@
+# bash completion for nethogs(8) -*- shell-script -*-
+
+_nethogs()
+{
+ local cur prev words cword
+ _init_completion || return
+
+ case "$prev" in
+ -d)
+ # expect integer value
+ COMPREPLY+=( $( compgen -W '{0..9}' ) )
+ compopt -o nospace
+ return
+ ;;
+ esac
+
+ if [[ "$cur" == -* ]]; then
+ COMPREPLY=( $( compgen -W '$( _parse_usage "$1" -h )' -- "$cur" ) )
+ return
+ fi
+
+ _available_interfaces -a
+} && complete -F _nethogs nethogs
+
+# ex: ts=4 sw=4 et filetype=sh
diff --git a/completions/perl b/completions/perl
index a67c7699..8b296377 100644
--- a/completions/perl
+++ b/completions/perl
@@ -99,16 +99,22 @@ _perldoc()
local perl="${1%doc}"
[[ $perl == $1 ]] || ! type $perl &>/dev/null && perl=
- # complete builtin perl functions
case $prev in
+ -h|-V|-n|-o|-M|-w|-L)
+ return 0
+ ;;
+ -d)
+ _filedir
+ return 0
+ ;;
-f)
_perlfunctions $perl
- return 0
+ return 0
;;
esac
if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W '-h -v -t -u -m -l -F -X -f -q' -- "$cur" ))
+ COMPREPLY=( $( compgen -W '$( _parse_help "$1" -h )' -- "$cur" ) )
else
# return available modules (unless it is clearly a file)
if [[ "$cur" != @(*/|[.~])* ]]; then
diff --git a/completions/removepkg b/completions/removepkg
index 2fb79869..287952cb 100644
--- a/completions/removepkg
+++ b/completions/removepkg
@@ -4,19 +4,18 @@ _removepkg()
{
local cur prev words cword
_init_completion || return
- if [[ $cur == -* ]]; then
- COMPREPLY=( $( compgen -W '-copy -keep -preserve -warn' \
- -- "$cur" ) )
- return 0
+ if [[ "$cur" == -* ]]; then
+ COMPREPLY=( $( compgen -W '-copy -keep -preserve -warn' -- "$cur" ) )
+ return
fi
- if [[ $cur == */* ]]; then
+ if [[ "$cur" == */* ]]; then
_filedir
- return 0
+ return
fi
local root=${ROOT:-/}
- COMPREPLY=( $( cd "$root/var/log/packages" 2> /dev/null || return 1 ; \
+ COMPREPLY=( $( cd "$root/var/log/packages" 2> /dev/null || return 1; \
compgen -f -- "$cur" ) )
} &&
complete -F _removepkg removepkg
diff --git a/completions/rpm b/completions/rpm
index 7a19d814..b7b59e0e 100644
--- a/completions/rpm
+++ b/completions/rpm
@@ -67,7 +67,7 @@ _rpm()
fi
case $prev in
- --dbpath|--excludepath|--prefix|--relocate|--root)
+ --dbpath|--excludepath|--prefix|--relocate|--root|-r)
_filedir -d
return 0
;;
diff --git a/completions/rpm2tgz b/completions/rpm2tgz
index 0b4510c7..34e54a5a 100644
--- a/completions/rpm2tgz
+++ b/completions/rpm2tgz
@@ -7,10 +7,10 @@ _rpm2tgz()
if [[ "$cur" == -* ]]; then
COMPREPLY=( $( compgen -W '-s -S -n -r -d -c' -- "$cur" ) )
- return 0
+ return
fi
- COMPREPLY=( $(compgen -f -X "!*.rpm" -- "$cur") )
-} && complete -F _rpm2tgz -o plusdirs rpm2tgz rpm2txz rpm2targz
+ _filedir "rpm"
+} && complete -F _rpm2tgz rpm2tgz rpm2txz rpm2targz
# ex: ts=4 sw=4 et filetype=sh
diff --git a/completions/sbopkg b/completions/sbopkg
index d0bf9a2b..0c812faa 100644
--- a/completions/sbopkg
+++ b/completions/sbopkg
@@ -6,33 +6,33 @@ _sbopkg()
_init_completion || return
if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W '-b -c -d -e -f -g -h -i -k -l \
- -o -P -p -q -R -r -s -u -V -v' -- "$cur" ) )
- return 0
+ COMPREPLY=( $( compgen -W '-b -c -d -e -f -g -h -i -k -l -o
+ -P -p -q -R -r -s -u -V -v' -- "$cur" ) )
+ return
fi
case "$prev" in
-e)
COMPREPLY=( $( compgen -W 'ask continue stop' -- "$cur" ) )
- return 0
+ return
;;
-f)
_filedir
- return 0
+ return
;;
-d)
_filedir -d
- return 0
+ return
;;
-V)
COMPREPLY=( $( compgen -W "? \
- $(sbopkg -V ? 2>&1 | cut -s -f1)" -- "$cur" ) )
- return 0
+ $( sbopkg -V ? 2>&1 | cut -s -f1 )" -- "$cur" ) )
+ return
;;
-i|-b)
;;
*)
- return 0
+ return
;;
esac
@@ -45,8 +45,8 @@ _sbopkg()
fi
done
- if [[ ! -r $config ]]; then
- return 0
+ if [[ ! -r "$config" ]]; then
+ return
fi
. $config
@@ -64,7 +64,7 @@ _sbopkg()
done
if [[ ! -r $REPO_ROOT/$REPO_NAME/$REPO_BRANCH/SLACKBUILDS.TXT ]]; then
- return 0
+ return
fi
COMPREPLY=( $( sed -ne "/^SLACKBUILD NAME: $cur/{s/^SLACKBUILD NAME: //;p}"\
$REPO_ROOT/$REPO_NAME/$REPO_BRANCH/SLACKBUILDS.TXT )
diff --git a/completions/slackpkg b/completions/slackpkg
index 9648d25a..b4223e71 100644
--- a/completions/slackpkg
+++ b/completions/slackpkg
@@ -17,34 +17,34 @@ _slackpkg()
-delall|-checkmd5|-checkgpg|-checksize|-postinst|-onoff|-download_all|\
-dialog|-batch|-only_new_dotnew|-use_includes|-spinning)
COMPREPLY=( $( compgen -W 'on off' -- "$cur" ) )
- return 0
+ return
;;
-default_answer)
COMPREPLY=( $( compgen -W 'yes no' -- "$cur" ) )
- return 0
+ return
;;
-dialog_maxargs|-mirror)
# argument required but no completions available
- return 0
+ return
;;
esac
- $split && return 0
+ $split && return
if [[ "$cur" == -* ]]; then
compopt -o nospace
- COMPREPLY=( $( compgen -W '-delall= -checkmd5= -checkgpg= \
- -checksize= -postinst= -onoff= -download_all= -dialog= \
- -dialog_maxargs= -batch= -only_new_dotnew= -use_includes= \
+ COMPREPLY=( $( compgen -W '-delall= -checkmd5= -checkgpg=
+ -checksize= -postinst= -onoff= -download_all= -dialog=
+ -dialog_maxargs= -batch= -only_new_dotnew= -use_includes=
-spinning= -default_answer= -mirror=' -- "$cur" ) )
- return 0
+ return
fi
local confdir="/etc/slackpkg"
local config="$confdir/slackpkg.conf"
- if [[ ! -r $config ]]; then
- return 0
+ if [[ ! -r "$config" ]]; then
+ return
fi
. "$config"
@@ -59,7 +59,7 @@ _slackpkg()
case "$action" in
generate-template|search|file-search)
# argument required but no completions available
- return 0
+ return
;;
install-template|remove-template)
if [[ -e $confdir/templates ]]; then
@@ -67,39 +67,39 @@ _slackpkg()
compgen -f -X "!*.template" -- "$cur" ) )
COMPREPLY=( ${COMPREPLY[@]%.template} )
fi
- return 0
+ return
;;
remove)
_filedir
- COMPREPLY+=( $( compgen -W 'a ap d e f k kde kdei l n t tcl x \
+ COMPREPLY+=( $( compgen -W 'a ap d e f k kde kdei l n t tcl x
xap y' -- "$cur" ) )
COMPREPLY+=( $( cd /var/log/packages; compgen -f -- "$cur" ) )
- return 0
+ return
;;
install|reinstall|upgrade|blacklist|download)
_filedir
- COMPREPLY+=( $( compgen -W 'a ap d e f k kde kdei l n t tcl x \
+ COMPREPLY+=( $( compgen -W 'a ap d e f k kde kdei l n t tcl x
xap y' -- "$cur" ) )
- COMPREPLY+=( $( cut -f 6 -d\ ${WORKDIR}/pkglist 2> /dev/null | \
+ COMPREPLY+=( $( cut -f 6 -d\ "${WORKDIR}/pkglist" 2> /dev/null | \
grep "^$cur" ) )
- return 0
+ return
;;
info)
- COMPREPLY+=( $( cut -f 6 -d\ ${WORKDIR}/pkglist 2> /dev/null | \
+ COMPREPLY=( $( cut -f 6 -d\ "${WORKDIR}/pkglist" 2> /dev/null | \
grep "^$cur" ) )
- return 0
+ return
;;
update)
# we should complete the same as the next `list` + "gpg"
COMPREPLY=( $( compgen -W 'gpg' -- "$cur" ) )
;&
*)
- COMPREPLY+=( $( compgen -W 'install reinstall upgrade remove \
- blacklist download update install-new upgrade-all \
- clean-system new-config check-updates help generate-template \
+ COMPREPLY+=( $( compgen -W 'install reinstall upgrade remove
+ blacklist download update install-new upgrade-all
+ clean-system new-config check-updates help generate-template
install-template remove-template search file-search info' -- \
"$cur" ) )
- return 0
+ return
;;
esac
diff --git a/completions/slapt-get b/completions/slapt-get
index d18695cd..02f007ec 100644
--- a/completions/slapt-get
+++ b/completions/slapt-get
@@ -8,18 +8,18 @@ _slapt_get()
case "$prev" in
--config|-c)
_filedir
- return 0
+ return
;;
--retry|--search)
# argument required but no completions available
- return 0
+ return
;;
esac
if [[ "$cur" == -* ]]; then
COMPREPLY=( $( compgen -W '$( _parse_help "$1" --help )' -- "$cur" ) )
[[ $COMPREPLY == *= ]] && compopt -o nospace
- [[ $COMPREPLY ]] && return 0
+ [[ $COMPREPLY ]] && return
fi
local i t
@@ -48,7 +48,7 @@ _slapt_get()
break
fi
done
- if [[ ! -r $config ]]; then
+ if [[ ! -r "$config" ]]; then
return
fi
@@ -59,21 +59,21 @@ _slapt_get()
local name=${cur%%-*}
COMPREPLY=( $( slapt-get -c $config --search "^$name" 2>/dev/null |\
sed -ne "/^$cur/{s/ .*$//;p}" ) )
- return 0
+ return
;;
avl) # --install|-i|
COMPREPLY=( $( slapt-get -c $config --available 2>/dev/null | \
- sed -ne "/^$cur/{s/ .*$//;p}") )
- return 0
+ sed -ne "/^$cur/{s/ .*$//;p}" ) )
+ return
;;
ins) # --remove|--filelist
COMPREPLY=( $( cd /var/log/packages; compgen -f -- "$cur" ) )
- return 0
+ return
;;
set) # --install-set
- COMPREPLY=( $( compgen -W 'a ap d e f k kde kdei l n t tcl x \
+ COMPREPLY=( $( compgen -W 'a ap d e f k kde kdei l n t tcl x
xap y' -- "$cur" ) )
- return 0
+ return
;;
esac
} && complete -F _slapt_get slapt-get
diff --git a/completions/slapt-src b/completions/slapt-src
index 64b196e7..6234eaa8 100644
--- a/completions/slapt-src
+++ b/completions/slapt-src
@@ -8,18 +8,18 @@ _slapt_src()
case "$prev" in
--config|-c)
_filedir
- return 0
+ return
;;
--search|-s|--postprocess|-p)
# argument required but no completions available
- return 0
+ return
;;
esac
if [[ "$cur" == -* ]]; then
COMPREPLY=( $( compgen -W '$( _parse_help "$1" --help )' -- "$cur" ) )
[[ $COMPREPLY == *= ]] && compopt -o nospace
- [[ $COMPREPLY ]] && return 0
+ [[ $COMPREPLY ]] && return
fi
local i t
@@ -31,7 +31,7 @@ _slapt_src()
fi
done
if [[ $t != all ]]; then
- return 0
+ return
fi
local config="/etc/slapt-get/slapt-srcrc" # default config location
@@ -42,18 +42,18 @@ _slapt_src()
break
fi
done
- if [[ ! -r $config ]]; then
- return 0
+ if [[ ! -r "$config" ]]; then
+ return
fi
if [[ "$cur" == *:* ]]; then
local name=${cur%:*}
local version=${cur##*:}
- COMPREPLY=( $( slapt-src --config $config --search "^$name" 2> \
+ COMPREPLY=( $( slapt-src --config "$config" --search "^$name" 2> \
/dev/null | sed -ne "/^$cur/{s/^$name:\([^ ]*\) .*$/\1/;p}" ) )
else
- COMPREPLY=( $( slapt-src --config $config --search "^$cur" 2>/dev/null \
- | sed -ne "/^$cur/{s/ .*$//;p}" ) )
+ COMPREPLY=( $( slapt-src --config "$config" --search "^$cur" 2> \
+ /dev/null | sed -ne "/^$cur/{s/ .*$//;p}" ) )
fi
} && complete -F _slapt_src slapt-src
diff --git a/completions/sqlite3 b/completions/sqlite3
index 1207823d..e97c2e9e 100644
--- a/completions/sqlite3
+++ b/completions/sqlite3
@@ -18,9 +18,7 @@ _sqlite3()
esac
if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W '-help -init -echo -header -noheader -bail
- -interactive -batch -column -csv -html -line -list -separator
- -nullvalue -version' -- "$cur" ) )
+ COMPREPLY=( $( compgen -W '$( _parse_help "$1" -help )' -- "$cur" ) )
return 0
fi
diff --git a/completions/upgradepkg b/completions/upgradepkg
index 59a27ca5..f9fa23ab 100644
--- a/completions/upgradepkg
+++ b/completions/upgradepkg
@@ -6,9 +6,9 @@ _upgradepkg()
_init_completion || return
if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W '--dry-run --install-new --reinstall \
- --verbose' -- "$cur") )
- return 0
+ COMPREPLY=( $( compgen -W '--dry-run --install-new --reinstall
+ --verbose' -- "$cur" ) )
+ return
fi
if [[ "$cur" == ?*%* ]]; then
@@ -20,7 +20,7 @@ _upgradepkg()
[[ $COMPREPLY ]] || nofiles=1
COMPREPLY+=( $( compgen -P "$prev%" -S '/' -d -- "$cur" ) )
[[ $nofiles ]] && compopt -o nospace
- return 0
+ return
fi
_filedir "t[bglx]z"
diff --git a/completions/valgrind b/completions/valgrind
new file mode 100644
index 00000000..1930c21b
--- /dev/null
+++ b/completions/valgrind
@@ -0,0 +1,104 @@
+# valgrind(1) completion -*- shell-script -*-
+
+_valgrind()
+{
+ local cur prev words cword split
+ _init_completion -s || return
+
+ local i
+ # Note: intentionally using COMP_WORDS and COMP_CWORD instead of
+ # words and cword here due to splitting on = causing index differences
+ # (_command_offset assumes the former).
+ for (( i=1; i <= COMP_CWORD; i++ )); do
+ if [[ ${COMP_WORDS[i]} != @([-=])* && ${COMP_WORDS[i-1]} != = ]]; then
+ _command_offset $i
+ return
+ fi
+ done
+
+ local tool
+ for (( i=1; i < ${#words[@]}; i++ )); do
+ if [[ ${words[i]} == --tool=?* ]]; then
+ tool=${words[i]}
+ break
+ fi
+ done
+
+ case $prev in
+ -h|--help|--help-debug|--version)
+ return
+ ;;
+ --tool)
+ # Tools seem to be named e.g. like memcheck-amd64-linux from which
+ # we want to grab memcheck.
+ COMPREPLY=( $( compgen -W '$(
+ for f in /usr{,/local}/lib{,64}/valgrind/*; do
+ [[ $f != *.so && -x $f ]] &&
+ sed -ne "s/^.*\/\(.*\)-\([^-]*\)-\([^-]*\)/\1/p" <<<$f
+ done )' -- "$cur" ) )
+ return
+ ;;
+ --sim-hints)
+ COMPREPLY=( $( compgen -W 'lax-ioctls enable-outer' -- "$cur" ) )
+ return
+ ;;
+ --kernel-variant)
+ COMPREPLY=( $( compgen -W 'bproc' -- "$cur" ) )
+ return
+ ;;
+ # callgrind:
+ --callgrind-out-file)
+ _filedir
+ return
+ ;;
+ # exp-dhat:
+ --sort-by)
+ COMPREPLY=( $( compgen -W 'max-bytes-live tot-bytes-allocd
+ max-blocks-live' -- "$cur" ) )
+ return
+ ;;
+ # massif:
+ --time-unit)
+ COMPREPLY=( $( compgen -W 'i ms B' -- "$cur" ) )
+ return
+ ;;
+ # generic cases parsed from --help output
+ --+([-A-Za-z0-9_]))
+ local value=$( $1 --help-debug $tool 2>/dev/null | \
+ sed -ne "s|^[$' \t']*$prev=\([^$' \t']\{1,\}\).*|\1|p" )
+ case $value in
+ \<file*\>)
+ _filedir
+ return
+ ;;
+ \<command\>)
+ COMPREPLY=( $( compgen -c -- "$cur" ) )
+ return
+ ;;
+ \<+([0-9])..+([0-9])\>)
+ COMPREPLY=( $( compgen -W "{${value:1:((${#value}-2))}}" \
+ -- "$cur" ) )
+ return
+ ;;
+ # "yes", "yes|no", etc (but not "string", "STR",
+ # "hint1,hint2,...")
+ yes|+([-a-z0-9])\|+([-a-z0-9\|]))
+ COMPREPLY=( $( IFS='|' compgen -W '$value' -- "$cur" ) )
+ return
+ ;;
+ esac
+ ;;
+ esac
+
+ $split && return
+
+ if [[ $cur == -* ]]; then
+ COMPREPLY=( $( compgen -W '$( _parse_help "$1" "--help $tool" )' \
+ -- "$cur" ) )
+ [[ $COMPREPLY == *= ]] && compopt -o nospace
+ return
+ fi
+} &&
+complete -F _valgrind valgrind
+
+# ex: ts=4 sw=4 et filetype=sh
diff --git a/completions/wine b/completions/wine
index 58e4cf46..c02c97f0 100644
--- a/completions/wine
+++ b/completions/wine
@@ -5,9 +5,9 @@ _wine()
local cur prev words cword
_init_completion || return
- if [[ "$cword" -eq 1 ]]; then
+ if [[ $cword -eq 1 ]]; then
if [[ "$cur" == -* ]]; then
- COMPREPLY=( $(compgen -W '--help --version' -- "$cur") )
+ COMPREPLY=( $( compgen -W '--help --version' -- "$cur" ) )
[[ $COMPREPLY ]] && return
fi
_filedir '[eE][xX][eE]?(.[sS][oO])|[cC][oO][mM]|[sS][cC][rR]'
diff --git a/completions/xgamma b/completions/xgamma
index 4c434cfe..c5b8a76b 100644
--- a/completions/xgamma
+++ b/completions/xgamma
@@ -7,9 +7,9 @@ _xgamma()
case "$prev" in
-screen)
- local screens=$(xrandr --query 2>/dev/null | \
- sed -n '/^Screen /s|^Screen \{1,\}\(.*\):.*$|\1|p' 2>/dev/null)
- COMPREPLY=( $(compgen -W "$screens" -- "$cur"))
+ local screens=$( xrandr --query 2>/dev/null | sed -n \
+ '/^Screen /s|^Screen \{1,\}\(.*\):.*$|\1|p' 2>/dev/null )
+ COMPREPLY=( $( compgen -W "$screens" -- "$cur" ) )
return
;;
-gamma|-rgamma|-ggamma|-bgamma)
@@ -17,7 +17,7 @@ _xgamma()
if [[ $cur && "$cur" != *.* ]]; then
COMPREPLY=( . )
fi
- COMPREPLY+=( $(compgen -W "{0..9}") )
+ COMPREPLY+=( $( compgen -W "{0..9}" ) )
compopt -o nospace
return
;;
@@ -26,14 +26,15 @@ _xgamma()
if [[ "$cur" == :* && "$cur" != :*.* ]]; then
# FIXME: where to get local display numbers?
local display=${cur#:}
- COMPREPLY=( $(compgen -W "${display:-0}.") )
+ COMPREPLY=( $( compgen -W "${display:-0}." ) )
compopt -o nospace
elif [[ "$cur" == :*.* ]]; then
# local screen numbers
- local t screens=$(xrandr --query 2>/dev/null | sed -n \
- -e '/^Screen /s|^Screen \{1,\}\(.*\):.*$|\1|p' 2>/dev/null)
+ local t screens=$( xrandr --query 2>/dev/null | sed -ne \
+ '/^Screen /s|^Screen \{1,\}\(.*\):.*$|\1|p' 2>/dev/null )
t="${cur#:}"
- COMPREPLY=( $(compgen -P "${t%.*}." -W "$screens" -- "${cur##*.}"))
+ COMPREPLY=( $( compgen -P "${t%.*}." -W "$screens" -- \
+ "${cur##*.}" ) )
elif [[ "$cur" != *:* ]]; then
# complete hostnames
_known_hosts_real -c "$cur"
diff --git a/completions/xhost b/completions/xhost
index 397ca9ce..22839e4f 100644
--- a/completions/xhost
+++ b/completions/xhost
@@ -10,8 +10,6 @@ _xhost ()
-*) _known_hosts_real -p- "${cur:1}" ;;
*) _known_hosts_real "$cur" ;;
esac
-
- return 0
} &&
complete -F _xhost xhost
diff --git a/completions/xrandr b/completions/xrandr
index 36164298..332be812 100644
--- a/completions/xrandr
+++ b/completions/xrandr
@@ -7,52 +7,50 @@ _xrandr()
local output modes
- case $prev in
+ case "$prev" in
--output|--left-of|--right-of|--above|--below|--same-as)
- local outputs=$(xrandr|awk '/connected/ {print $1}')
- COMPREPLY=( $(compgen -W "$outputs" -- "$cur"))
- return 0
+ local outputs=$( xrandr | awk '/connected/ {print $1}' )
+ COMPREPLY=( $( compgen -W "$outputs" -- "$cur" ) )
+ return
;;
--mode)
for(( i = 1; i < cword; i++ )); do
- if [[ "${words[i]}" == "--output" ]]; then
+ if [[ "${words[i]}" == --output ]]; then
output=${words[i+1]}
break
fi
done
- modes=$(xrandr|sed -e "1,/$output/ d" \
- -e "/connected/,$ d"|awk '{print $1}')
- COMPREPLY=( $( compgen -W "$modes" -- "$cur"))
- return 0
+ modes=$( xrandr | sed -e "1,/$output/ d" \
+ -e "/connected/,$ d" | awk '{print $1}' )
+ COMPREPLY=( $( compgen -W "$modes" -- "$cur" ) )
+ return
;;
-o|--orientation)
COMPREPLY=( $( compgen -W 'normal inverted left right 0 1 2 3' -- \
"$cur" ) )
- return 0
+ return
;;
--reflect)
- COMPREPLY=( $( compgen -W 'normal x y xy' -- \
- "$cur" ) )
- return 0
+ COMPREPLY=( $( compgen -W 'normal x y xy' -- "$cur" ) )
+ return
;;
--rotate)
- COMPREPLY=( $( compgen -W 'normal inverted left right' -- \
- "$cur" ) )
- return 0
+ COMPREPLY=( $( compgen -W 'normal inverted left right' -- "$cur" ) )
+ return
;;
esac
case $cur in
*)
- COMPREPLY=( $(compgen -W '-display -help --orientation --query \
- --size --rate --version -x -y --screen --verbose --dryrun \
- --q1 --q12 --nograb --prop --properties --fb --fbmm --dpi \
- --output --auto --mode --preferred --pos --rate --refresh \
- --reflect --rotate --left-of --right-of --above --below \
- --same-as --set --scale --transform --off --crtc --panning \
- --gamma --brightness --primary --noprimary --newmode --rmmode \
- --addmode --delmode' -- "$cur") )
- return 0
+ COMPREPLY=( $( compgen -W '-display -help --orientation --query
+ --size --rate --version -x -y --screen --verbose --dryrun
+ --q1 --q12 --nograb --prop --properties --fb --fbmm --dpi
+ --output --auto --mode --preferred --pos --rate --refresh
+ --reflect --rotate --left-of --right-of --above --below
+ --same-as --set --scale --transform --off --crtc --panning
+ --gamma --brightness --primary --noprimary --newmode --rmmode
+ --addmode --delmode' -- "$cur" ) )
+ return
;;
esac
} &&