Browse Source

perf: `zrecompile` the compdump file to speed up startup (#8802)

Monson Shao 1 year ago
parent
commit
875a455320
1 changed files with 4 additions and 1 deletions
  1. 4 1
      oh-my-zsh.sh

+ 4 - 1
oh-my-zsh.sh

@@ -67,7 +67,7 @@ fi
 fpath=("$ZSH/functions" "$ZSH/completions" $fpath)
 
 # Load all stock functions (from $fpath files) called below.
-autoload -U compaudit compinit
+autoload -U compaudit compinit zrecompile
 
 # Set ZSH_CUSTOM to the path where your custom config files
 # and plugins exists, or else we will use the default custom/
@@ -142,6 +142,9 @@ EOF
 fi
 unset zcompdump_revision zcompdump_fpath zcompdump_refresh
 
+# zcompile the completion dump file if the .zwc is older or missing.
+zrecompile -q -p "$ZSH_COMPDUMP" && rm -f "$ZSH_COMPDUMP.zwc.old"
+
 # 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