c550f1f8443774e9639bbb03b50728eb855836eb

Author
Robby Russell <robby@planetargon.com>
Committer
Robby Russell <robby@planetargon.com>
Date

Message

Merged pull request #269 from oknowton/master.

Significantly speed up startup time (1.2 seconds for me) by removing redundant compinit calls

Diff

  1diff --git a/lib/completion.zsh b/lib/completion.zsh
  2index 9c2dfecca3cc82ee5f3b1231f11b7a9f75e2e3a4..fdd0a8536cd4825235d0f4fddd217f0f398ea86b 100644
  3--- a/lib/completion.zsh
  4+++ b/lib/completion.zsh
  5@@ -8,9 +8,6 @@ setopt always_to_end
  6 
  7 WORDCHARS=''
  8 
  9-autoload -U compinit
 10-compinit -i
 11-
 12 zmodload -i zsh/complist
 13 
 14 ## case-insensitive (all),partial-word and then substring completion
 15diff --git a/lib/key-bindings.zsh b/lib/key-bindings.zsh
 16index 7196a88ffe3de7e8b1f4e8327ed58f050f8898b8..c7ad907d782d61c51f6e62bd03dbf960712285df 100644
 17--- a/lib/key-bindings.zsh
 18+++ b/lib/key-bindings.zsh
 19@@ -1,6 +1,4 @@
 20 # TODO: Explain what some of this does..
 21-autoload -U compinit
 22-compinit -i
 23 
 24 bindkey -e
 25 bindkey '\ew' kill-region
 26diff --git a/oh-my-zsh.sh b/oh-my-zsh.sh
 27index 291772dfe0b8bc5345717ef2b185eb7b52fa3194..bf108afce832de3e7b8877fc608439bb41efc20c 100644
 28--- a/oh-my-zsh.sh
 29+++ b/oh-my-zsh.sh
 30@@ -7,12 +7,23 @@ fpath=($ZSH/functions $fpath)
 31 # TIP: Add files you don't want in git to .gitignore
 32 for config_file ($ZSH/lib/*.zsh) source $config_file
 33 
 34-# Load all of your custom configurations from custom/
 35-for config_file ($ZSH/custom/*.zsh) source $config_file
 36+# Add all defined plugins to fpath
 37+plugin=${plugin:=()}
 38+for plugin ($plugins) fpath=($ZSH/plugins/$plugin $fpath)
 39+
 40+# Load and run compinit
 41+autoload -U compinit
 42+compinit -i
 43 
 44 # Load all of the plugins that were defined in ~/.zshrc
 45-plugin=${plugin:=()}
 46-for plugin ($plugins) source $ZSH/plugins/$plugin/$plugin.plugin.zsh
 47+for plugin ($plugins); do
 48+  if [ -f $ZSH/plugins/$plugin/$plugin.plugin.zsh ]; then
 49+    source $ZSH/plugins/$plugin/$plugin.plugin.zsh
 50+  fi
 51+done
 52+
 53+# Load all of your custom configurations from custom/
 54+for config_file ($ZSH/custom/*.zsh) source $config_file
 55 
 56 # Load the theme
 57 source "$ZSH/themes/$ZSH_THEME.zsh-theme"
 58diff --git a/plugins/brew/brew.plugin.zsh b/plugins/brew/brew.plugin.zsh
 59deleted file mode 100644
 60index 353a18942ac594122f5bfc634fcef3f834d1c665..0000000000000000000000000000000000000000
 61--- a/plugins/brew/brew.plugin.zsh
 62+++ /dev/null
 63@@ -1,4 +0,0 @@
 64-# add brew completion function to path
 65-fpath=($ZSH/plugins/brew $fpath)
 66-autoload -U compinit
 67-compinit -i
 68diff --git a/plugins/cpanm/cpanm.plugin.zsh b/plugins/cpanm/cpanm.plugin.zsh
 69deleted file mode 100644
 70index af52d3e8b2567a2a61f9f41cae8f3b15e0d4b933..0000000000000000000000000000000000000000
 71--- a/plugins/cpanm/cpanm.plugin.zsh
 72+++ /dev/null
 73@@ -1,4 +0,0 @@
 74-# add cpanm completion function to path
 75-fpath=($ZSH/plugins/cpanm $fpath)
 76-autoload -U compinit
 77-compinit -i
 78diff --git a/plugins/gem/gem.plugin.zsh b/plugins/gem/gem.plugin.zsh
 79deleted file mode 100644
 80index d4e5c6584a8289c6d4097cd2090fb71a48ef69c6..0000000000000000000000000000000000000000
 81--- a/plugins/gem/gem.plugin.zsh
 82+++ /dev/null
 83@@ -1,4 +0,0 @@
 84-# add gem completion function to path
 85-fpath=($ZSH/plugins/gem $fpath)
 86-autoload -U compinit
 87-compinit -i
 88diff --git a/plugins/github/github.plugin.zsh b/plugins/github/github.plugin.zsh
 89index 8d45806545fa8110221c551c5e98dc7f2a9d48ec..df7053ba7c897eff67982911cc754a62eb3970e3 100644
 90--- a/plugins/github/github.plugin.zsh
 91+++ b/plugins/github/github.plugin.zsh
 92@@ -5,7 +5,3 @@ if [ "$commands[(I)hub]" ]; then
 93     function git(){hub "$@"}
 94 fi
 95 
 96-# add github completion function to path
 97-fpath=($ZSH/plugins/github $fpath)
 98-autoload -U compinit
 99-compinit -i
100diff --git a/plugins/macports/macports.plugin.zsh b/plugins/macports/macports.plugin.zsh
101index cbbc4926596480a1567ae5b36e812412c3c901d3..277352e321afd49b954cb91223cf59f9eaf399a3 100644
102--- a/plugins/macports/macports.plugin.zsh
103+++ b/plugins/macports/macports.plugin.zsh
104@@ -6,7 +6,3 @@ alias puni="sudo port uninstall inactive"
105 alias puo="sudo port upgrade outdated"
106 alias pup="psu && puo"
107 
108-# add macports completion function to path
109-fpath=($ZSH/plugins/macports $fpath)
110-autoload -U compinit
111-compinit -i
112diff --git a/plugins/npm/npm.plugin.zsh b/plugins/npm/npm.plugin.zsh
113deleted file mode 100644
114index 826f0f7b00b89019e562bf21e178d7d5dcd53a63..0000000000000000000000000000000000000000
115--- a/plugins/npm/npm.plugin.zsh
116+++ /dev/null
117@@ -1,4 +0,0 @@
118-# add npm completion function to path
119-fpath=($ZSH/plugins/npm $fpath)
120-autoload -U compinit
121-compinit -i
122diff --git a/plugins/pip/pip.plugin.zsh b/plugins/pip/pip.plugin.zsh
123deleted file mode 100644
124index bf9f2396885713e6eb409342090be6c9790e3171..0000000000000000000000000000000000000000
125--- a/plugins/pip/pip.plugin.zsh
126+++ /dev/null
127@@ -1,4 +0,0 @@
128-# add brew completion function to path
129-fpath=($ZSH/plugins/pip $fpath)
130-autoload -U compinit
131-compinit -i
132diff --git a/plugins/redis-cli/redis-cli.plugin.zsh b/plugins/redis-cli/redis-cli.plugin.zsh
133deleted file mode 100644
134index af5a843c98e413038cf03af86d2a387fdcc9cf2d..0000000000000000000000000000000000000000
135--- a/plugins/redis-cli/redis-cli.plugin.zsh
136+++ /dev/null
137@@ -1,4 +0,0 @@
138-# add redis completion function to path
139-fpath=($ZSH/plugins/redis-cli $fpath)
140-autoload -U compinit
141-compinit -i
142diff --git a/plugins/vagrant/vagrant.plugin.zsh b/plugins/vagrant/vagrant.plugin.zsh
143deleted file mode 100644
144index 5e9bcf10a4ed23a24bdd4040f6501f3b43562caf..0000000000000000000000000000000000000000
145--- a/plugins/vagrant/vagrant.plugin.zsh
146+++ /dev/null
147@@ -1,3 +0,0 @@
148-fpath=($ZSH/plugins/vagrant $fpath)
149-autoload -U compinit
150-compinit -i