summaryrefslogtreecommitdiff
path: root/oh-my-zsh.sh
diff options
context:
space:
mode:
Diffstat (limited to 'oh-my-zsh.sh')
-rw-r--r--oh-my-zsh.sh33
1 files changed, 28 insertions, 5 deletions
diff --git a/oh-my-zsh.sh b/oh-my-zsh.sh
index 291772dfe..3ea88e924 100644
--- a/oh-my-zsh.sh
+++ b/oh-my-zsh.sh
@@ -7,15 +7,38 @@ fpath=($ZSH/functions $fpath)
# TIP: Add files you don't want in git to .gitignore
for config_file ($ZSH/lib/*.zsh) source $config_file
-# Load all of your custom configurations from custom/
-for config_file ($ZSH/custom/*.zsh) source $config_file
+# Add all defined plugins to fpath
+plugin=${plugin:=()}
+for plugin ($plugins) fpath=($ZSH/plugins/$plugin $fpath)
+
+# Load and run compinit
+autoload -U compinit
+compinit -i
# Load all of the plugins that were defined in ~/.zshrc
-plugin=${plugin:=()}
-for plugin ($plugins) source $ZSH/plugins/$plugin/$plugin.plugin.zsh
+for plugin ($plugins); do
+ if [ -f $ZSH/plugins/$plugin/$plugin.plugin.zsh ]; then
+ source $ZSH/plugins/$plugin/$plugin.plugin.zsh
+ fi
+done
+
+# Load all of your custom configurations from custom/
+for config_file ($ZSH/custom/*.zsh) source $config_file
# Load the theme
-source "$ZSH/themes/$ZSH_THEME.zsh-theme"
+# Check for updates on initial load...
+if [ "$ZSH_THEME" = "random" ]
+then
+ themes=($ZSH/themes/*zsh-theme)
+ N=${#themes[@]}
+ ((N=RANDOM%N))
+ RANDOM_THEME=${themes[$N]}
+ source "$RANDOM_THEME"
+ echo "[oh-my-zsh] Random theme '$RANDOM_THEME' loaded..."
+else
+ source "$ZSH/themes/$ZSH_THEME.zsh-theme"
+fi
+
# Check for updates on initial load...
if [ "$DISABLE_AUTO_UPDATE" = "true" ]