]> arthur.barton.de Git - ax-zsh.git/commitdiff
Read in the theme before cleaning up ...
authorAlexander Barton <alex@barton.de>
Sun, 3 Feb 2019 22:35:06 +0000 (23:35 +0100)
committerAlexander Barton <alex@barton.de>
Sun, 3 Feb 2019 22:35:06 +0000 (23:35 +0100)
It was wrong to source the theme file last, because 99_cleanup undefines
some functions that can be used by themes -- even by the default theme!

ax.zsh

diff --git a/ax.zsh b/ax.zsh
index a13707bd0bb4fe83b7437c0549985a9264f10bf3..d7f80981a51e316e522365c5eb52ab7da1835232 100644 (file)
--- a/ax.zsh
+++ b/ax.zsh
@@ -175,21 +175,21 @@ else
 
        # Read in all the plugins for the current "type":
        for plugin ($plugin_list); do
-               axzsh_load_plugin "$plugin" "$script_type" "$cache_file"
-       done
-
-       # Read the "theme file", if any and in "zshrc" stage:
-       if [[ "$script_type" = "zshrc" ]]; then
-               if [[ -r "$AXZSH_THEME" ]]; then
-                       source "$AXZSH_THEME"
-                       if [[ -n "$cache_file" ]]; then
-                               # Include the theme into the new cache file:
-                               echo "# BEGIN Theme" >>"$cache_file"
-                               echo 'source "$AXZSH_THEME"' >>"$cache_file"
-                               echo "# END Theme" >>"$cache_file"
+               # Read the "theme file", if any and in "zshrc" stage.
+               # This must be done before 99_cleanup is run!
+               if [[ "$plugin:t" == "99_cleanup" && "$script_type" = "zshrc" ]]; then
+                       if [[ -r "$AXZSH_THEME" ]]; then
+                               source "$AXZSH_THEME"
+                               if [[ -n "$cache_file" ]]; then
+                                       # Source the theme in the new cache file:
+                                       echo "# BEGIN Theme" >>"$cache_file"
+                                       echo 'source "$AXZSH_THEME"' >>"$cache_file"
+                                       echo "# END Theme" >>"$cache_file"
+                               fi
                        fi
                fi
-       fi
+               axzsh_load_plugin "$plugin" "$script_type" "$cache_file"
+       done
 fi
 
 # Clean up ...