1
0
mirror of https://github.com/dcarrillo/prezto.git synced 2025-10-14 07:49:09 +00:00

[#23] Add a module loading function

This commit is contained in:
Sorin Ionescu
2012-04-02 18:51:00 -04:00
parent 86e4d2e3ff
commit 6233ec6aad
4 changed files with 74 additions and 58 deletions

View File

@@ -16,72 +16,33 @@ unset min_zsh_version
# Disable color and theme in dumb terminals.
if [[ "$TERM" == 'dumb' ]]; then
zstyle ':omz:*:*' color 'no'
zstyle ':omz:prompt' theme 'off'
zstyle ':omz:module:prompt' theme 'off'
fi
# Get enabled OMZ modules.
zstyle -a ':omz:load' omodule 'omodules'
# Add functions to fpath.
fpath=(
${0:h}/themes/*(/FN)
${omodules:+${0:h}/modules/${^omodules}/{functions,completions}(/FN)}
$fpath
)
# Load Zsh modules.
zstyle -a ':omz:load' module 'zmodules'
zstyle -a ':omz:load' zmodule 'zmodules'
for zmodule in "$zmodules[@]"; do
zmodload "${(z)zmodule}"
zmodload "zsh/${(z)zmodule}"
done
unset zmodules zmodule
unset zmodule{s,}
# Autoload Zsh functions.
zstyle -a ':omz:load' function 'zfunctions'
zstyle -a ':omz:load' zfunction 'zfunctions'
for zfunction in "$zfunctions[@]"; do
autoload -Uz "$zfunction"
done
unset zfunctions zfunction
# Load and initialize the completion system ignoring insecure directories.
autoload -Uz compinit && compinit -i
unset zfunction{s,}
# Source files (the order matters).
source "${0:h}/helper.zsh"
# Source modules defined in ~/.zshrc.
for omodule in "$omodules[@]"; do
if [[ ! -d "${0:h}/modules/$omodule" ]]; then
print "omz: no such module: $omodule" >&2
fi
zstyle -a ':omz:load' omodule 'omodules'
omodload "$omodules[@]"
unset omodules
if [[ -f "${0:h}/modules/$omodule/init.zsh" ]]; then
source "${0:h}/modules/$omodule/init.zsh"
fi
if (( $? == 0 )); then
zstyle ":omz:module:$omodule" loaded 'yes'
fi
done
unset omodule omodules
# Autoload Oh My Zsh functions.
for fdir in "$fpath[@]"; do
if [[ "$fdir" == ${0:h}/(|*/)functions ]]; then
for ofunction in $fdir/[^_.]*(N.:t); do
autoload -Uz "$ofunction"
done
fi
done
unset fdir ofunction
# Set environment variables for launchd processes.
if [[ "$OSTYPE" == darwin* ]]; then
for env_var in PATH MANPATH; do
launchctl setenv "$env_var" "${(P)env_var}" &!
done
unset env_var
fi
# Add themes to fpath.
fpath=(${0:h}/themes/*(/FN) $fpath)
# Load and run the prompt theming system.
autoload -Uz promptinit && promptinit
@@ -95,6 +56,14 @@ else
fi
unset prompt_argv
# Set environment variables for launchd processes.
if [[ "$OSTYPE" == darwin* ]]; then
for env_var in PATH MANPATH; do
launchctl setenv "$env_var" "${(P)env_var}" &!
done
unset env_var
fi
# Compile the completion dump, to increase startup speed.
dump_file="$HOME/.zcompdump"
if [[ "$dump_file" -nt "${dump_file}.zwc" || ! -f "${dump_file}.zwc" ]]; then