7FEERTIQ4GM442UF7H7CZTD6SU3Y2Z2A6DHV6FM6TNDKU3YRWYWAC
CQP5HB5FX2UYIDKYJ4DOF3J7QIM6466VLNO3IGY4CFVE5CKKFXQAC
RXCY7LD6ZRIOIKZEYKLMCYPMQPXF4DOEEFBDLVR2B22BXLZJFFBQC
A3TVGLVHSVLMEHLHB3TPBSD3QGNVGX3DIK6BEBDTTHWBNW4ALMRAC
DWJHLZWVL7RM2WQXN3ZJTJXXKUEUNQLL37TMMTPL7NL375M2QJCQC
XV4LCDN5CJGUH3OM7CDYCRXAADZPIR436TJWZAUWUCYCMPJA2YZQC
HF5V4K3OQLQ3VSDHLPZRQWAWYFV3WRQGHQXUIDH6KAENQKAUTUJQC
ODL5DR53CG3P5WJXH22CYRP2HDHT4BXK7ME3RGQYVXRH5EBEXU4QC
ZUBUVNSQIZVWXMCHYK2JTKFUSPVXNWFNNZ75IWY7MZHLGYF42A3AC
WEITNL4AUWPM34Q6XKEVGQU2NM2ERXPQI6GJWGVG7S5RSOGFN2QQC
7JB5ULZTC6SV7BBMZYTE3XUCGM5OKUQALOYFATCDZWVWNHTL6P7QC
22EHFKMVYFNGNVOLIS5UI7E6XJJXN7RR2I2EDVTLJGETQ3LJE7CAC
KM3YTAOFTHRYCBSEKRQKWXYEZYGPHHRLT3SOX3P6BFPYYEKGEDXAC
local script_depends loaded_depends
typeset -A script_depends
typeset -A loaded_depends
get_depends() {
awk -F: '$0=="###" || $1 != "#" { exit } $1="depends-on" {print $3}' "$1"
}
if [[ "$TERM" == "dumb" ]]; then
unsetopt zle
unsetopt prompt_cr
unsetopt prompt_subst
unfunction precmd
unfunction preexec
PS1='$ '
else
PLUGIN_DIR="${PLUGIN_DIR:-$HOME/.zsh.d}"
build_depends() {
local -a depends
depends=(${(@f)$(get_depends "$1")})
for depend in $depends; do
script_depends[$1]+="$depend:"
done
}
local script_depends loaded_depends
typeset -A script_depends
typeset -A loaded_depends
get_depends() {
awk -F: '$0=="###" || $1 != "#" { exit } $1="depends-on" {print $3}' "$1"
}
load_depends() {
for depend in ${(s<:>)script_depends[$1]}; do
if [[ -z $loaded_depends[$depend] ]]; then
local fn="$PLUGIN_DIR/dependencies/$depend.zsh"
if [[ -f $fn ]]; then
if [[ -z $script_depends[$fn] ]]; then
build_depends "$fn"
build_depends() {
local -a depends
depends=(${(@f)$(get_depends "$1")})
for depend in $depends; do
script_depends[$1]+="$depend:"
done
}
load_depends() {
for depend in ${(s<:>)script_depends[$1]}; do
if [[ -z $loaded_depends[$depend] ]]; then
local fn="$PLUGIN_DIR/dependencies/$depend.zsh"
if [[ -f $fn ]]; then
if [[ -z $script_depends[$fn] ]]; then
build_depends "$fn"
fi
load_depends "$fn"
source $fn
else
echo "$fn missing for $1"
PATH="<<<:$PATH:>>>"
for x in $init_scripts; do
build_depends "$x"
load_depends "$x"
source "$x"
done
PATH="<<<:$PATH:>>>"
for x in $init_scripts; do
build_depends "$x"
load_depends "$x"
source "$x"
done
fi