PageRenderTime 22ms CodeModel.GetById 15ms app.highlight 2ms RepoModel.GetById 2ms app.codeStats 0ms

/bash_completion_lib/complete -o filenames/dpkg

http://github.com/brinkman83/bashrc
#! | 76 lines | 67 code | 9 blank | 0 comment | 0 complexity | c2734652c3225473d67269ed77e60a73 MD5 | raw file
 1# Debian dpkg(8) completion
 2
 3
 4comp_include _comp_dpkg_installed_packages _expand _filedir _get_cword
 5
 6
 7_dpkg()
 8{
 9	local cur prev i
10
11	COMPREPLY=()
12	cur=`_get_cword`
13	prev=${COMP_WORDS[COMP_CWORD-1]}
14	i=$COMP_CWORD
15
16	_expand || return 0
17
18	# find the last option flag
19	if [[ $cur != -* ]]; then
20		while [[ $prev != -* && $i != 1 ]]; do
21			i=$((i-1))
22			prev=${COMP_WORDS[i-1]}
23		done
24	fi
25
26	case "$prev" in
27	-@(c|i|A|I|f|e|x|X|-@(install|unpack|record-avail|contents|info|fsys-tarfile|field|control|extract)))
28		_filedir '?(u)deb'
29		return 0
30		;;
31	-@(b|-build))
32		_filedir -d
33		return 0
34		;;
35   	-@(s|p|l|-@(status|print-avail|list)))
36		COMPREPLY=( $( apt-cache pkgnames $cur 2>/dev/null ) )
37		return 0
38		;;
39	-@(S|-search))
40		_filedir
41		return 0
42		;;
43	-@(r|L|P|-@(remove|purge|listfiles)))
44		COMPREPLY=( $( _comp_dpkg_installed_packages $cur ) )
45		return 0
46		;;
47	*)
48
49	COMPREPLY=( $( compgen -W '-i --install --unpack -A --record-avail \
50			--configure -r --remove -P --purge --get-selections \
51			--set-selections --update-avail --merge-avail \
52			--clear-avail  --command-fd --forget-old-unavail -s \
53			--status -p --print-avail -L --listfiles -l --list \
54			-S --search -C --audit --print-architecture \
55			--print-gnu-build-architecture \
56			--print-installation-architecture \
57			--compare-versions --help --version --force-help \
58			--force-all --force-auto-select --force-downgrade \
59			--force-configure-any --force-hold --force-bad-path \
60			--force-not-root --force-overwrite \
61			--force-overwrite-diverted --force-bad-verify \
62			--force-depends-version --force-depends \
63			--force-confnew --force-confold --force-confdef \
64			--force-confmiss --force-conflicts --force-architecture\
65			--force-overwrite-dir --force-remove-reinstreq \
66			--force-remove-essential -Dh \
67			--debug=help --licence --admindir= --root= --instdir= \
68			-O --selected-only -E --skip-same-version \
69			-G --refuse-downgrade -B --auto-deconfigure \
70			--no-debsig --no-act -D --debug= --status-fd \
71			-b --build -I --info -f --field -c --contents \
72			-x --extract -X --vextract --fsys-tarfile -e --control \
73			--ignore-depends= --abort-after' -- $cur ) )
74		;;
75	esac
76} # _dpkg()