+ ax_error "Unknown repository type!"
+ fi
+ done
+}
+
+function CheckPlugins {
+ missing_plugins=()
+ invalid_plugins=()
+
+ ax_msg - "Checking plugins ..."
+ for dir ($AXZSH/plugins/*(N)); do
+ plugin=${dir:t}
+
+ # Test if plugin is already enabled
+ [[ -e "$AXZSH/active_plugins/$plugin" ]] \
+ && enabled=" (enabled)" \
+ || unset enabled
+
+ # Test plugin ...
+ printf " - \"%s\"%s ... " "$plugin" "$enabled"
+ new_plugin=""
+ for script ($AXZSH/plugins/$plugin/$plugin.{zshrc,zprofile}); do
+ [[ -r "$script" ]] || continue
+ AXZSH_PLUGIN_CHECK=1 zsh -i -c "source $script"; r=$?
+ if [[ $r -eq 0 ]]; then
+ new_plugin=$plugin
+ break
+ fi
+ done
+ if [[ -n "$new_plugin" ]]; then
+ detected_plugins+=($new_plugin)
+ [[ -n "$enabled" ]] || missing_plugins+=($new_plugin)
+ ax_msg 0 "OK."
+ elif [[ $r -eq 91 ]]; then
+ ax_msg 1 "ignored."
+ elif [[ $r -eq 92 ]]; then
+ ax_msg 1 "optional."
+ else
+ [[ -n "$enabled" ]] && invalid_plugins+=($plugin)
+ ax_msg 2 "failed."