]> arthur.barton.de Git - ax-zsh.git/blobdiff - bin/axzshctl
axzshctl: Create shallow clones of remote modules
[ax-zsh.git] / bin / axzshctl
index 5b6a924e394a3f0d956d24549b532ee3d242e614..5b2be804703606103721a44cedb0ded329d375a5 100755 (executable)
@@ -107,13 +107,18 @@ function EnablePlugin {
                # GitHub plugin
                mkdir -p "$AXZSH/repos"
                if [[ ! -e "$AXZSH/repos/$plugin" ]]; then
-                       ax_msg - "Cloning plugin from GitHub ..."
-                       git clone "https://github.com/$1.git" \
+                       ax_msg - "Cloning module from GitHub ..."
+                       git clone --depth=1 "https://github.com/$1.git" \
                         "$AXZSH/repos/$plugin"
-                       # Try to enable a theme in this "foreign" plugin, but
-                       # ignore errors: we don't know if this plugin provides
-                       # a theme at all ...
-                       SetTheme "${plugin#*#}" 2>/dev/null
+               fi
+               # Try to enable a theme in this "foreign module", but ignore
+               # errors: we don't know if this module provides a theme or is
+               # a "regular" plugin ...
+               if SetTheme "${plugin#*#}" 2>/dev/null; then
+                       ax_msg 0 "Module \"$1\" was enabled as theme \"${plugin#*#}\"."
+                       # A theme was enabled: So assume that this is a theme
+                       # and don't enable it as plugin.
+                       return 0
                fi
        fi