summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobby Russell <robby@planetargon.com>2011-12-14 21:56:45 -0800
committerRobby Russell <robby@planetargon.com>2011-12-14 21:56:45 -0800
commit11b47690854306ba095869714a1a6be8c9debc73 (patch)
tree194a2a12069bfcf0a7f88eb60be4dbd7c8984e9b
parentca21ff16da3d7d807831db997b2abfefc79ea21b (diff)
parent258457ea4fe0b8fcb1f6d0242071edb82cab449a (diff)
downloadzsh-11b47690854306ba095869714a1a6be8c9debc73.tar.gz
zsh-11b47690854306ba095869714a1a6be8c9debc73.tar.bz2
zsh-11b47690854306ba095869714a1a6be8c9debc73.zip
Merge pull request #709 from docwhat/custom-plugin-fpath
set fpath correctly for custom plugins
-rw-r--r--oh-my-zsh.sh23
1 files changed, 15 insertions, 8 deletions
diff --git a/oh-my-zsh.sh b/oh-my-zsh.sh
index 891e8d467..7ae41c33e 100644
--- a/oh-my-zsh.sh
+++ b/oh-my-zsh.sh
@@ -13,20 +13,27 @@ fpath=($ZSH/functions $ZSH/completions $fpath)
# TIP: Add files you don't want in git to .gitignore
for config_file ($ZSH/lib/*.zsh) source $config_file
-# Add all defined plugins to fpath
+# Set ZSH_CUSTOM to the path where your custom config files
+# and plugins exists, or else we will use the default custom/
+if [[ -z "$ZSH_CUSTOM" ]]; then
+ ZSH_CUSTOM="$ZSH/custom"
+fi
+
+# Add all defined plugins to fpath. This must be done
+# before running compinit.
plugin=${plugin:=()}
-for plugin ($plugins) fpath=($ZSH/plugins/$plugin $fpath)
+for plugin ($plugins); do
+ if [ -f $ZSH_CUSTOM/plugins/$plugin/$plugin.plugin.zsh ]; then
+ fpath=($ZSH_CUSTOM/plugins/$plugin $fpath)
+ elif [ -f $ZSH/plugins/$plugin/$plugin.plugin.zsh ]; then
+ fpath=($ZSH/plugins/$plugin $fpath)
+ fi
+done
# Load and run compinit
autoload -U compinit
compinit -i
-# Set ZSH_CUSTOM to the path where your custom config files
-# and plugins exists, or else we will use the default custom/
-if [ "$ZSH_CUSTOM" = "" ]
-then
- ZSH_CUSTOM="$ZSH/custom"
-fi
# Load all of the plugins that were defined in ~/.zshrc
for plugin ($plugins); do