diff --git a/bin/miaou-bash b/bin/miaou-bash index 8134ce5..1c37231 100755 --- a/bin/miaou-bash +++ b/bin/miaou-bash @@ -3,42 +3,43 @@ # constants -MIAOU_DEBUG=${MIAOU_DEBUG:-false} -MIAOU_ERROR_REGEX='^(.*): line ([0-9]+): miaou_error:' - -declare -A ANSI -ANSI[RESET]=0 - -ANSI[STYLE_ITALIC]=3 -ANSI[STYLE_BOLD]=1 -ANSI[STYLE_UNDERLINE]=4 -ANSI[STYLE_STRIKETHROUGH]=9 - -ANSI[FG_BLACK]=30 -ANSI[FG_RED]=31 -ANSI[FG_GREEN]=32 -ANSI[FG_YELLOW]=33 -ANSI[FG_BLUE]=34 -ANSI[FG_PURPLE]=35 -ANSI[FG_CYAN]=36 -ANSI[FG_WHITE]=37 -ANSI[FG_GRAY]=90 -ANSI[FG_LIGHTBLUE]=94 -ANSI[FG_MAGENTA]=95 - -ANSI[BG_BLACK]=40 -ANSI[BG_RED]=41 -ANSI[BG_GREEN]=42 -ANSI[BG_YELLOW]=43 -ANSI[BG_BLUE]=44 -ANSI[BG_PURPLE]=45 -ANSI[BG_CYAN]=46 -ANSI[BG_WHITE]=47 -ANSI[BG_GRAY]=90 -ANSI[BG_MAGENTA]=95 - -readonly MIAOU_DEBUG MIAOU_ERROR_REGEX ANSI - +if [[ ! -v MIAOU_BASH_LOADED_ONCE ]]; then + readonly MIAOU_BASH_LOADED_ONCE=true + readonly MIAOU_DEBUG=${MIAOU_DEBUG:-false} + readonly MIAOU_ERROR_REGEX='^(.*): line ([0-9]+): miaou_error:' + + declare -A ANSI + ANSI[RESET]=0 + + ANSI[STYLE_ITALIC]=3 + ANSI[STYLE_BOLD]=1 + ANSI[STYLE_UNDERLINE]=4 + ANSI[STYLE_STRIKETHROUGH]=9 + + ANSI[FG_BLACK]=30 + ANSI[FG_RED]=31 + ANSI[FG_GREEN]=32 + ANSI[FG_YELLOW]=33 + ANSI[FG_BLUE]=34 + ANSI[FG_PURPLE]=35 + ANSI[FG_CYAN]=36 + ANSI[FG_WHITE]=37 + ANSI[FG_GRAY]=90 + ANSI[FG_LIGHTBLUE]=94 + ANSI[FG_MAGENTA]=95 + + ANSI[BG_BLACK]=40 + ANSI[BG_RED]=41 + ANSI[BG_GREEN]=42 + ANSI[BG_YELLOW]=43 + ANSI[BG_BLUE]=44 + ANSI[BG_PURPLE]=45 + ANSI[BG_CYAN]=46 + ANSI[BG_WHITE]=47 + ANSI[BG_GRAY]=90 + ANSI[BG_MAGENTA]=95 + readonly ANSI +fi ## functions function is_true {