cakephp3.plugin.zsh 908 Bytes
Newer Older
Jad Bitar's avatar
Jad Bitar committed
1
2
# CakePHP 3 basic command completion
_cakephp3_get_command_list () {
Draniu's avatar
Draniu committed
3
4
5
6
7
8
9
10
	bin/cake Completion commands
}

_cakephp3_get_sub_command_list () {
	bin/cake Completion subcommands ${words[2]}
}

_cakephp3_get_3rd_argument () {
11
	bin/cake ${words[2]} ${words[3]} | \grep '\-\ '| \awk '{print $2}'
Jad Bitar's avatar
Jad Bitar committed
12
13
14
}

_cakephp3 () {
15
16
17
	local -a has3rdargument
	has3rdargument=("all" "controller" "fixture" "model" "template")
	if [ -f bin/cake ]; then
Draniu's avatar
Draniu committed
18
		if (( CURRENT == 2 )); then
19
			compadd $(_cakephp3_get_command_list)
Draniu's avatar
Draniu committed
20
21
		fi
		if (( CURRENT == 3 )); then
22
			compadd $(_cakephp3_get_sub_command_list)
Draniu's avatar
Draniu committed
23
24
		fi
		if (( CURRENT == 4 )); then
25
26
			if [[ ${has3rdargument[(i)${words[3]}]} -le ${#has3rdargument} ]]; then
				compadd $(_cakephp3_get_3rd_argument)
Draniu's avatar
Draniu committed
27
28
			fi
		fi
Jad Bitar's avatar
Jad Bitar committed
29
30
31
32
33
34
35
36
37
38
  fi
}

compdef _cakephp3 bin/cake
compdef _cakephp3 cake

#Alias
alias c3='bin/cake'
alias c3cache='bin/cake orm_cache clear'
alias c3migrate='bin/cake migrations migrate'