diff --git a/roles/zsh/files/.zshrc b/roles/zsh/files/.zshrc index bc2b3e83..5dd3d7b6 100644 --- a/roles/zsh/files/.zshrc +++ b/roles/zsh/files/.zshrc @@ -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