]> arthur.barton.de Git - ax-zsh.git/blobdiff - ax.zsh
12_locale: Cygwin lowercases encodings as well
[ax-zsh.git] / ax.zsh
diff --git a/ax.zsh b/ax.zsh
index 25d2ef2b3f27a70adc80541b98d60a148631a609..de39ad8499b52bcd9527d489b20b436d0c9e33e2 100644 (file)
--- a/ax.zsh
+++ b/ax.zsh
@@ -13,8 +13,10 @@ function axzsh_load_plugin {
        [[ -z "$2" ]] && type="zshrc" || type="$2"
        fname="$dname/$plugin.$type"
 
+       # Strip repository prefix (like "alexbarton#test-plugin"):
        [[ "$plugin" =~ "#" ]] && plugin=$(echo $plugin | cut -d'#' -f2-)
 
+       # "short plugin name": strip ".zsh" suffix:
        plugin_short=${plugin%.zsh}
 
        if [[ ! -d "$dname" ]]; then
@@ -43,15 +45,19 @@ function axzsh_load_plugin {
                        fname="$dname/init.zsh"
                else
                        echo "AX-ZSH plugin type of \"$plugin\" unknown, skipped!" >&2
+                       return 0
                fi
        fi
 
        if [[ "$type" == "zprofile" && -d "$dname/functions" ]]; then
                # Add plugin function path when folder exists
+               [[ -n "$AXZSH_DEBUG" ]] \
+                       && echo "   - $plugin ($type): functions ..."
                axzsh_fpath+=("$dname/functions")
        fi
 
        if [[ -r "$fname" ]]; then
+               # Read plugin ...
                [[ -n "$AXZSH_DEBUG" ]] \
                        && echo "   - $plugin ($type) ..."
                source "$fname"
@@ -62,6 +68,16 @@ function axzsh_load_plugin {
        return 0
 }
 
+# Make sure that "my" (=ZSH) directory is in the search path ...
+if [[ -z "$AXZSH" ]]; then
+       _p="${0:h}"
+       [[ "$_p" != "." ]] && PATH="$PATH:${0:h}"
+       unset _p
+fi
+
+# Make sure that "SHELL" variable is set and exported
+[[ -n "$SHELL" ]] || export SHELL=$(command -v zsh)
+
 # Make sure that "AXZSH" variable is set and exported
 if [[ -z "$AXZSH" ]]; then
        export AXZSH="$HOME/.axzsh"
@@ -87,6 +103,8 @@ plugin_list=(
 for plugin ($plugin_list); do
        axzsh_load_plugin "$plugin" "$script_type"
 done
+
+# Clean up ...
 unfunction axzsh_load_plugin
 unset script_name script_type plugin
 unset plugin_list