Files
dotwryn/setup/config/rc.zsh
T

44 lines
1.0 KiB
Bash
Raw Normal View History

2026-09-21 06:48:49 -06:00
#####################################################################
setup.config.rc() {
local config_type="${1}"
local rc
case "${config_type}" in
( vim )
rc="${XDG_CONFIG_HOME:-${HOME}/.config}/vim/vimrc"
mkdir -p -- "$(dirname -- "${rc}")"
[[ -f "${HOME}/.vimrc" ]] \
&& cat "${HOME}/.vimrc" >> "${rc}" \
&& rm -- "${HOME}/.vimrc" \
;
;;
( * ) rc="${HOME}/.${config_type}rc" ;;
esac
touch -- "${rc}"
local source_line comment
case "${config_type}" in
( zsh )
source_line="source ${DOTWRYN_SETUP__DOTWRYN}/zsh/rc"
comment='#'
;;
( vim )
source_line="source ${DOTWRYN_SETUP__DOTWRYN}/vim/rc.vim"
comment='"'
;;
( * )
echo.error "no rc source-line defined for '${config_type}'"
return 1
;;
esac
setup.filesystem.write-managed-block "${rc}" --comment "${comment}" --tag dotwryn-rc --one-line <<-EOF
${source_line}
EOF
grep -qF -- "${source_line}" "${rc}" \
&& echo.success "${config_type}rc is configured correctly" \
|| echo.error "failed to configure ${config_type}rc" \
|| return 1
}