#!/usr/bin/env bash set -euo pipefail # "Automate" flipping applications between light and dark themes. DOTFILES="$(cd "$(dirname "$(dirname "$(realpath "${BASH_SOURCE[0]}")")")" && pwd)" SCHEME_FILE="${DOTFILES}/.color-scheme" if [ -f "${SCHEME_FILE}" ]; then default_scheme="$(head -n 1 "${SCHEME_FILE}")" else default_scheme='dark' fi scheme="${1:-${default_scheme}}" if [ "${scheme}" = 'dark' ]; then ln -sf "${DOTFILES}/alacritty/colors-dark.yml" "${DOTFILES}/alacritty/colors.yml" ln -sf "${DOTFILES}/vim/colors/jdkaplan-dark.vim" "${DOTFILES}/vim/colors/jdkaplan.vim" ln -sf "${DOTFILES}/task/jdkaplan-dark.theme" "${DOTFILES}/task/color.theme" "${DOTFILES}/alacritty/install" echo "$scheme" > "${SCHEME_FILE}" elif [ "${scheme}" = 'light' ]; then ln -sf "${DOTFILES}/alacritty/colors-light.yml" "${DOTFILES}/alacritty/colors.yml" ln -sf "${DOTFILES}/vim/colors/jdkaplan-light.vim" "${DOTFILES}/vim/colors/jdkaplan.vim" ln -sf "${DOTFILES}/task/jdkaplan-light.theme" "${DOTFILES}/task/color.theme" "${DOTFILES}/alacritty/install" echo "$scheme" > "${SCHEME_FILE}" else echo "Unknown color scheme: ${scheme}" exit 1 fi