git-bug

 1#compdef git-bug
 2
 3_arguments \
 4  '1: :->level1' \
 5  '2: :->level2' \
 6  '3: :_files'
 7case $state in
 8  level1)
 9    case $words[1] in
10      git-bug)
11        _arguments '1: :(add bridge commands comment deselect label ls ls-id ls-label pull push select show status termui title user version webui)'
12      ;;
13      *)
14        _arguments '*: :_files'
15      ;;
16    esac
17  ;;
18  level2)
19    case $words[2] in
20      bridge)
21        _arguments '2: :(configure pull rm)'
22      ;;
23      comment)
24        _arguments '2: :(add)'
25      ;;
26      label)
27        _arguments '2: :(add rm)'
28      ;;
29      status)
30        _arguments '2: :(close open)'
31      ;;
32      title)
33        _arguments '2: :(edit)'
34      ;;
35      user)
36        _arguments '2: :(adopt create ls)'
37      ;;
38      *)
39        _arguments '*: :_files'
40      ;;
41    esac
42  ;;
43  *)
44    _arguments '*: :_files'
45  ;;
46esac