File tree Expand file tree Collapse file tree 1 file changed +78
-0
lines changed Expand file tree Collapse file tree 1 file changed +78
-0
lines changed Original file line number Diff line number Diff line change
1
+ # compdef git gitk
2
+
3
+ # zsh completion wrapper for git
4
+ #
5
+ # You need git's bash completion script installed somewhere, by default on the
6
+ # same directory as this script.
7
+ #
8
+ # If your script is on ~/.git-completion.sh instead, you can configure it on
9
+ # your ~/.zshrc:
10
+ #
11
+ # zstyle ':completion:*:*:git:*' script ~/.git-completion.sh
12
+ #
13
+ # The recommended way to install this script is to copy to
14
+ # '~/.zsh/completion/_git', and then add the following to your ~/.zshrc file:
15
+ #
16
+ # fpath=(~/.zsh/completion $fpath)
17
+
18
+ complete ()
19
+ {
20
+ # do nothing
21
+ return 0
22
+ }
23
+
24
+ zstyle -s " :completion:*:*:git:*" script script
25
+ test -z " $script " && script=" $( dirname ${funcsourcetrace[1]%:* } ) " /git-completion.bash
26
+ ZSH_VERSION=' ' . " $script "
27
+
28
+ __gitcomp ()
29
+ {
30
+ emulate -L zsh
31
+
32
+ local cur_=" ${3-$cur } "
33
+
34
+ case " $cur_ " in
35
+ --* =)
36
+ ;;
37
+ * )
38
+ local c IFS=$' \t\n '
39
+ local -a array
40
+ for c in ${=1} ; do
41
+ c=" $c ${4-} "
42
+ case $c in
43
+ --* =* |* .) ;;
44
+ * ) c=" $c " ;;
45
+ esac
46
+ array+=(" $c " )
47
+ done
48
+ compset -P ' *[=:]'
49
+ compadd -Q -S ' ' -p " ${2-} " -a -- array && _ret=0
50
+ ;;
51
+ esac
52
+ }
53
+
54
+ __gitcomp_nl ()
55
+ {
56
+ emulate -L zsh
57
+
58
+ local IFS=$' \n '
59
+ compset -P ' *[=:]'
60
+ compadd -Q -S " ${4- } " -p " ${2-} " -- ${=1} && _ret=0
61
+ }
62
+
63
+ _git ()
64
+ {
65
+ local _ret=1
66
+ () {
67
+ emulate -L ksh
68
+ local cur cword prev
69
+ cur=${words[CURRENT-1]}
70
+ prev=${words[CURRENT-2]}
71
+ let cword=CURRENT-1
72
+ __${service} _main
73
+ }
74
+ let _ret && _default -S ' ' && _ret=0
75
+ return _ret
76
+ }
77
+
78
+ _git
You can’t perform that action at this time.
0 commit comments