aboutsummaryrefslogtreecommitdiff
path: root/zsh-completion
blob: bf8d9d033b93c6223920dcdd4b2fbaa4639ecf72 (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
#compdef rc.d

_rc.d () {
	local curcontext="$curcontext" state line
	typeset -A opt_args

	 _arguments "1: :->action" "*: :->service"

	case $state in
		action)
			_arguments "1:action:(list help start stop restart)"
			;;
		service)
			local action="$words[2]"
			curcontext="${curcontext%:*:*}:rc.d-${action}:"

			case $action in
				list)
					_arguments "*: :"
					;;
				help)
					_arguments "*: :"
					;;
				*)
					_arguments "*: :_services"
					;;
			esac
		;;
  esac
}

_rc.d "$@"

# vim: set ts=2 sw=2 ft=sh noet: