_zimfw_compile() { setopt LOCAL_OPTIONS CASE_GLOB EXTENDED_GLOB autoload -U zrecompile local zdumpfile zdir zfile # Compile the completion cache; significant speedup zstyle -s ':zim:completion' dumpfile 'zdumpfile' || zdumpfile="<%= home %>/.zcompdump" if [[ -f ${zdumpfile} ]]; then zrecompile -p ${1} ${zdumpfile} || return 1 fi # Compile .zshrc zrecompile -p ${1} <%= home %>/.zshrc || return 1 # Compile autoloaded functions, taken from zrecompile doc in zshcontrib(1) for zdir in ${fpath}; do [[ ${zdir} == (.|..) || ${zdir} == (.|..)/* ]] && continue zfile=(${zdir}/^(*.*)(N-.)) if [[ -w ${zdir:h} && -n ${zfile} ]]; then zfile=(${${(M)zfile%/*/*}#/}) (builtin cd -q ${zdir:h} && zrecompile -p ${1} ${zdir:t}.zwc ${zfile}) || return 1 fi done # Compile scripts for zfile in ${ZIM_HOME}/(^*test*/)#*.zsh{,-theme}(N-.); do zrecompile -p ${1} ${zfile} || return 1 done if [[ ${1} != -q ]]; then print -P '%F{green}✓%f Done with compile.' fi }