refactor(zsh): simplify .zshrc
This commit is contained in:
parent
6c6b428883
commit
0b92af8398
|
@ -1,37 +1,23 @@
|
|||
# Enable extended globbing for use in _load_settings()
|
||||
setopt extendedglob
|
||||
sources=(
|
||||
'aliases'
|
||||
'colour'
|
||||
'functions'
|
||||
'fzf'
|
||||
'general'
|
||||
'git'
|
||||
'history'
|
||||
'navigation'
|
||||
'nvm'
|
||||
'options'
|
||||
'path'
|
||||
'platformsh'
|
||||
'plugins'
|
||||
'post/completion'
|
||||
)
|
||||
|
||||
# extra files in ~/.zsh/configs/pre , ~/.zsh/configs , and ~/.zsh/configs/post
|
||||
# these are loaded first, second, and third, respectively.
|
||||
_load_settings() {
|
||||
_dir="$1"
|
||||
if [ -d "$_dir" ]; then
|
||||
if [ -d "$_dir/pre" ]; then
|
||||
for config in "$_dir"/pre/**/*~*.zwc(N-.); do
|
||||
. $config
|
||||
done
|
||||
fi
|
||||
|
||||
for config in "$_dir"/**/*(N-.); do
|
||||
case "$config" in
|
||||
"$_dir"/(pre|post)/*|*.zwc)
|
||||
:
|
||||
;;
|
||||
*)
|
||||
. $config
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
if [ -d "$_dir/post" ]; then
|
||||
for config in "$_dir"/post/**/*~*.zwc(N-.); do
|
||||
. $config
|
||||
done
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
_load_settings "$HOME/.zsh/configs"
|
||||
for s in "${sources[@]}"; do
|
||||
source $HOME/.zsh/configs/${s}.zsh
|
||||
done
|
||||
|
||||
# Local config
|
||||
[[ -f ~/.zshrc.local ]] && source ~/.zshrc.local
|
||||
|
|
Loading…
Reference in a new issue