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:
69
init.zsh
69
init.zsh
@@ -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
|
||||
|
Reference in New Issue
Block a user