summaryrefslogtreecommitdiff
blob: 15a677dce5ba309dcb7566a67a83915dc8ff6668 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
#
# shash(1) completion.

_shash() {
	local cur prev

	COMPREPLY=()
	cur=${COMP_WORDS[COMP_CWORD]}
	prev=${COMP_WORDS[COMP_CWORD-1]}

	case "${prev}" in
	-c|--config)
		_filedir
		return 0 ;;
	-o|--keymode)
		COMPREPLY=( $( compgen -W "$( shash --listkeygen | tail -n +2 )" \
			-- ${cur} ) )
		return ;;
	-a|--algorithm)
		COMPREPLY=( $( compgen -W "$( shash --list )" \
			-- ${cur} ) )
		return ;;
	*)
		;;
	esac
	
	COMPREPLY=( $( compgen -W '-V -q -m -d -c -b -t -o -i -a -l -k -h -v \
		-L \
		--verbose --quiet --nosalt --time --hmac --doublecheck \
		--check --binary --text --keymode --config --algorithm \
		--list --key --listkeygen --help --version --license' \
		-- ${cur} ) )
	_filedir
	return 0
}
complete -F _shash ${filenames} shash