]> arthur.barton.de Git - ax-zsh.git/blobdiff - core/50_axzsh/functions/_axzsh
axzshctl set-theme completion: Look for all types in custom_themes/ and rpositories
[ax-zsh.git] / core / 50_axzsh / functions / _axzsh
index 2a62f29364ba8f4548a95fdabc694a94809d7fbb..ea32b58ab9cf3c8ddb4f411d7797336f11235d28 100644 (file)
@@ -13,6 +13,7 @@ _axzshctl() {
                        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'
 #
@@ -20,11 +21,18 @@ _axzshctl() {
          'args')
                case "$words[2]" in
                  "enable-plugin"|"disable-plugin")
-                       compadd "$@" $(ls -1 "$AXZSH"/plugins)
+                       compadd "$@" -- \
+                               "$AXZSH"/plugins/*(/:t) \
+                               "$AXZSH"/custom_plugins/*(N/:t) \
+                               "$AXZSH"/repos/*(/:t:s/#/\\/)
                        ;;
                  "set-theme")
-                       [[ -z $words[3] ]] \
-                               && compadd "$@" -- "-" $(ls -1 "$AXZSH"/themes | cut -d'.' -f1)
+                       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
                ;;