feat: braille logo banner with ASCII fallback

Renders the CF logo mark as braille dot art (20x10 chars = 40x40 px
resolution) on UTF-8 terminals, falling back to ASCII # chars on legacy
or non-Unicode terminals. Detection checks locale charmap and LANG/LC_ALL.
This commit is contained in:
pyr0ball 2026-07-20 15:48:27 -07:00
parent 353123748a
commit 7ddbafcf8c

View file

@ -133,17 +133,36 @@ fi
#-----------------------------------------------------------------#
script-title() {
format_boxborder --center --box-type=double \
"${grn} ████ ${dfl}" \
"${grn} ████████ ${dfl}${bld} C I R C U I T F O R G E ${dfl}" \
"${grn} ████ ████ ${dfl}" \
"${grn} ██████████████████ ${dfl}${gry} ───────────────────────── ${dfl}" \
"${grn}███ ██ ████ ███${dfl}${lyl} Node Bootstrap Installer ${dfl}" \
"${grn}████████████ █████${dfl}" \
"${grn}████████ ████████${dfl}${gry} v${VERSION} ${dfl}" \
"${grn} ██████████████████ ${dfl}" \
"${grn} ████████████ ${dfl}" \
"${grn} ████████ ${dfl}"
local _lines=()
if [[ "$(locale charmap 2>/dev/null)" == "UTF-8" ]] \
|| [[ "${LANG:-}${LC_ALL:-}" == *"UTF-8"* ]]; then
_lines=(
"${grn}⠀⠀⠀⠀⠀⠀⠀⠀⣀⣴⣦⣄⠀⠀⠀⠀⠀⠀⠀⠀${dfl}"
"${grn}⠀⠀⠀⠀⠀⠀⣠⣾⠟⠁⠈⠻⣷⣄⠀⠀⠀⠀⠀⠀${dfl}${bld} C I R C U I T F O R G E ${dfl}"
"${grn}⠀⠀⠀⢀⣤⡾⠋⠁⠀⠀⠀⠀⠈⠙⠿⣤⡀⠀⠀⠀${dfl}"
"${grn}⠀⢀⣴⡿⢋⣴⡿⠿⠿⠿⣾⣿⠿⠿⠶⠙⢿⣦⡀⠀${dfl}${gry} ───────────────────────── ${dfl}"
"${grn}⢐⣿⣯⡀⠸⣿⣀⠀⠀⠀⣿⣿⠛⠓⠀⠀⢀⣼⣿⡃${dfl}${lyl} Node Bootstrap Installer ${dfl}"
"${grn}⠘⡻⣮⡻⣶⣙⠛⠛⠟⠟⠻⠟⠀⠀⣀⣴⢟⣽⣿⠃${dfl}"
"${grn}⢾⣟⣮⡿⢶⣿⣷⣄⠀⠀⠀⠀⣠⣾⣿⣷⢟⣵⣿⡷${dfl}${gry} v${VERSION}${dfl}"
"${grn}⠀⠙⠳⣿⣻⣿⢷⣝⢷⣦⣠⡾⣫⡿⢿⣿⣿⡮⠋⠀${dfl}"
"${grn}⠀⠀⠀⠈⠻⣾⣗⣽⢿⣿⣫⡾⣯⣿⣷⠝⠁⠀⠀⠀${dfl}"
"${grn}⠀⠀⠀⠀⠀⠀⠛⢿⡿⠋⠙⢿⣮⠛⠀⠀⠀⠀⠀⠀${dfl}"
)
else
_lines=(
"${grn} #### ${dfl}"
"${grn} ######## ${dfl}${bld} C I R C U I T F O R G E ${dfl}"
"${grn} #### #### ${dfl}"
"${grn} ################## ${dfl}${gry} ───────────────────────── ${dfl}"
"${grn}### ## #### ###${dfl}${lyl} Node Bootstrap Installer ${dfl}"
"${grn}############ #####${dfl}"
"${grn}######## ########${dfl}${gry} v${VERSION}${dfl}"
"${grn} ################## ${dfl}"
"${grn} ############ ${dfl}"
"${grn} ######## ${dfl}"
)
fi
format_boxborder --center --box-type=double "${_lines[@]}"
}
# Function for displaying the usage of this script