#compdef axzshctl _axzshctl() { _arguments \ '1: :(( enable\:"Enable AX-ZSH." disable\:"Disable AX-ZSH." enable-plugin\:"Enable plugin(s)." disable-plugin\:"Disable plugin(s)." list-enabled\:"List enabled plugin(s)." reset-plugins\:"Reset active plugins to the default set." enable-default-plugins\:"Enable all default plugins." check-plugins\:"Check \"useful\" plugins." set-theme\:"Set active theme." upgrade\:"Upgrade AX-ZSH installation (requires Git)." update-caches\:"Force rebuild of all cache files." ))' \ '*: :->args' # case "$state" in 'args') case "$words[2]" in "enable-plugin"|"disable-plugin") compadd "$@" -- \ "$AXZSH"/plugins/*(/:t) \ "$AXZSH"/custom_plugins/*(N/:t) \ "$AXZSH"/repos/*(/:t:s/#/\\/) ;; "set-theme") compadd "$@" -- "-" \ "$AXZSH"/themes/*.axzshtheme(:r:t) \ "$AXZSH"/custom_themes/*.axzshtheme(N:r:t) \ "$AXZSH"/custom_themes/*.zsh-theme(N:r:t) \ "$AXZSH"/repos/*/*.axzshtheme(N:r:t) \ "$AXZSH"/repos/*/*.zsh-theme(N:r:t) ;; esac ;; esac } _axzshctl "$@"