if [[ $- != *i* ]]; then return fi ### # Default Environment ### __dotlib_set_PATH() { local path paths=("$HOME"/bin {/usr{/local,},}/{,s}bin) printf -v path %s: "${paths[@]}" export PATH=${path%:} } __dotlib_set_ENV() { local var declare -A env=( [EDITOR]=nano [PAGER]=less [LESSHISTFILE]=- [HISTCONTROL]=ignoreboth ) for var in "${!env[@]}"; do export "$var"="${env[$var]}" done } __dotlib_set_SHOPTS() { local shopts=( {null,ext,dot}glob globstar cmdhist hostcomplete checkwinsize checkhash ) shopt -s "${shopts[@]}" } __dotlib_set_PATH __dotlib_set_ENV __dotlib_set_SHOPTS ulimit -c unlimited ### # Library loader ### __dotlib_load_libraries() { local os dot{,s} case $OSTYPE in darwin*) os=darwin ;; *) os=unknown esac dots=( ~/bin/dotlib/generic-pre/*.sh ~/bin/dotlib/"$os"/*.sh ~/bin/dotlib/generic-post/*.sh ) for dot in "${dots[@]}"; do . "$dot" done } __dotlib_load_libraries ### # Reset exit status ### true