]> arthur.barton.de Git - ax-zsh.git/blob - core/40_axzsh/functions/_axzsh
ls: Add support for "lscolors.sh"
[ax-zsh.git] / core / 40_axzsh / functions / _axzsh
1 #compdef axzshctl
2
3 _axzshctl() {
4         _arguments \
5                 '1: :((
6                         enable\:"Enable AX-ZSH."
7                         disable\:"Disable AX-ZSH."
8                         enable-plugin\:"Enable plugin(s)."
9                         disable-plugin\:"Disable plugin(s)."
10                         list-enabled\:"List enabled plugin(s)."
11                         plugin-help\:"Show help text for a plugin."
12                         reset-plugins\:"Reset active plugins to the default set."
13                         enable-default-plugins\:"Enable all default plugins."
14                         check-plugins\:"Check \"useful\" plugins."
15                         set-theme\:"Set active theme."
16                         upgrade\:"Upgrade AX-ZSH installation (requires Git)."
17                         update-caches\:"Force rebuild of all cache files."
18                         version\:"Show version and setup information."
19                         help\:"Show help for the axzshctl command."
20                 ))' \
21                 '*: :->args'
22 #
23         case "$state" in
24           'args')
25                 case "$words[2]" in
26                   "enable-plugin"|"plugin-help")
27                         compadd "$@" -- \
28                                 "$AXZSH"/plugins/*(/:t) \
29                                 "$AXZSH"/custom_plugins/*(N/:t) \
30                                 "$AXZSH"/repos/*(/:t:s/#/\\/)
31                         for r in "$AXZSH"/repos/@*(N/); do
32                                 b=(echo $r(:t))
33                                 compadd "$@" -- \
34                                         $(echo $r/plugins/*(N:t) | sed -E "s/(^| )/ $b\//g")
35                         done
36                         ;;
37                   "disable-plugin")
38                         compadd "$@" -- \
39                                 "$AXZSH"/active_plugins/*(:t:s/#/\\/)
40                         ;;
41                   "set-theme")
42                         compadd "$@" -- "-" \
43                                 "$AXZSH"/themes/*.axzshtheme(:r:t) \
44                                 "$AXZSH"/custom_themes/*.axzshtheme(N:r:t) \
45                                 "$AXZSH"/custom_themes/*.zsh-theme(N:r:t) \
46                                 "$AXZSH"/repos/*/*.axzshtheme(N:r:t) \
47                                 "$AXZSH"/repos/*/*.zsh-theme(N:r:t)
48                         ;;
49                 esac
50                 ;;
51         esac
52 }
53
54 _axzshctl "$@"