32 lines
627 B
Plaintext
32 lines
627 B
Plaintext
# snippet to parse args in apply-color scripts
|
|
|
|
[ -z "$1" ] && exit 1
|
|
palette="$1"
|
|
[ -z "$2" ] && exit 1
|
|
colorName="$2"
|
|
[ -z "$3" ] && exit 1
|
|
colorHex="$3"
|
|
|
|
function log_error {
|
|
printf "\033[0;31mError:\033[0m $1\n" >&2
|
|
}
|
|
|
|
function log_info {
|
|
printf "\033[0;32mInfo:\033[0m $1\n" >&2
|
|
}
|
|
|
|
|
|
# remove leading '#' if present
|
|
if [[ $colorHex == \#* ]]; then
|
|
colorHex="${colorHex#\#}"
|
|
fi
|
|
|
|
# check if hex
|
|
if ! [[ $colorHex =~ ^[0-9A-Fa-f]{6}$ ]]; then
|
|
log_error "Invalid color hex: $colorHex"
|
|
exit 1
|
|
fi
|
|
|
|
function log_success {
|
|
log_info "Applied primary color ${colorName} (${colorHex}) to \033[1;34m$1\033[0m"
|
|
} |