diff --git a/oh-my-zsh.sh b/oh-my-zsh.sh index a90b3e98a..12132521d 100644 --- a/oh-my-zsh.sh +++ b/oh-my-zsh.sh @@ -8,11 +8,6 @@ fi # add a function path fpath=($ZSH/functions $ZSH/completions $fpath) -# Load all of the config files in ~/oh-my-zsh that end in .zsh -# TIP: Add files you don't want in git to .gitignore -for config_file ($ZSH/lib/*.zsh); do - source $config_file -done # Set ZSH_CUSTOM to the path where your custom config files # and plugins exists, or else we will use the default custom/ @@ -20,6 +15,17 @@ if [[ -z "$ZSH_CUSTOM" ]]; then ZSH_CUSTOM="$ZSH/custom" fi +# Load all library config files in the lib/ folder. If a config file with the +# same name exists under custom/ don't load the one in lib/. This allows you to +# override default behaviors +for library ($ZSH/lib/*.zsh); do + if [ ! -f $ZSH_CUSTOM/$library:t ]; then + source $library + fi +done + +# Load all of your custom configurations from custom/ +for config_file ($ZSH_CUSTOM/*.zsh(N)) source $config_file is_plugin() { local base_dir=$1 @@ -63,12 +69,6 @@ for plugin ($plugins); do fi done -# Load all of your custom configurations from custom/ -for config_file ($ZSH_CUSTOM/*.zsh(N)); do - source $config_file -done -unset config_file - # Load the theme if [ "$ZSH_THEME" = "random" ]; then themes=($ZSH/themes/*zsh-theme)