|
@@ -61,6 +61,18 @@ if [ -z "$ZSH_COMPDUMP" ]; then
|
|
|
ZSH_COMPDUMP="${ZDOTDIR:-${HOME}}/.zcompdump-${SHORT_HOST}-${ZSH_VERSION}"
|
|
|
fi
|
|
|
|
|
|
+# Construct zcompdump OMZ metadata
|
|
|
+zcompdump_metadata="\
|
|
|
+#omz revision: $(cd -q "$ZSH"; git rev-parse HEAD 2>/dev/null)
|
|
|
+#omz fpath: $fpath\
|
|
|
+"
|
|
|
+
|
|
|
+# Delete the zcompdump file if OMZ zcompdump metadata changed
|
|
|
+if ! cmp -s <(command grep '^#omz' "$ZSH_COMPDUMP" 2>/dev/null) <<< "$zcompdump_metadata"; then
|
|
|
+ command rm -f "$ZSH_COMPDUMP"
|
|
|
+ zcompdump_refresh=1
|
|
|
+fi
|
|
|
+
|
|
|
if [[ $ZSH_DISABLE_COMPFIX != true ]]; then
|
|
|
source $ZSH/lib/compfix.zsh
|
|
|
# If completion insecurities exist, warn the user
|
|
@@ -72,6 +84,13 @@ else
|
|
|
compinit -u -C -d "${ZSH_COMPDUMP}"
|
|
|
fi
|
|
|
|
|
|
+# Append zcompdump metadata if missing
|
|
|
+if (( $zcompdump_refresh )); then
|
|
|
+ echo "\n$zcompdump_metadata" >>! "$ZSH_COMPDUMP"
|
|
|
+fi
|
|
|
+
|
|
|
+unset zcompdump_metadata zcompdump_refresh
|
|
|
+
|
|
|
|
|
|
# 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
|