mirror of https://github.com/tLDP/LDP
61 lines
1.6 KiB
Bash
61 lines
1.6 KiB
Bash
#!/bin/bash
|
|
# hash-example.sh: Colorizing text.
|
|
# Author: Mariusz Gniazdowski <mariusz.gn-at-gmail.com>
|
|
|
|
. Hash.lib # Load the library of functions.
|
|
|
|
hash_set colors red "\033[0;31m"
|
|
hash_set colors blue "\033[0;34m"
|
|
hash_set colors light_blue "\033[1;34m"
|
|
hash_set colors light_red "\033[1;31m"
|
|
hash_set colors cyan "\033[0;36m"
|
|
hash_set colors light_green "\033[1;32m"
|
|
hash_set colors light_gray "\033[0;37m"
|
|
hash_set colors green "\033[0;32m"
|
|
hash_set colors yellow "\033[1;33m"
|
|
hash_set colors light_purple "\033[1;35m"
|
|
hash_set colors purple "\033[0;35m"
|
|
hash_set colors reset_color "\033[0;00m"
|
|
|
|
|
|
# $1 - keyname
|
|
# $2 - value
|
|
try_colors() {
|
|
echo -en "$2"
|
|
echo "This line is $1."
|
|
}
|
|
hash_foreach colors try_colors
|
|
hash_echo colors reset_color -en
|
|
|
|
echo -e '\nLet us overwrite some colors with yellow.\n'
|
|
# It's hard to read yellow text on some terminals.
|
|
hash_dup colors yellow red light_green blue green light_gray cyan
|
|
hash_foreach colors try_colors
|
|
hash_echo colors reset_color -en
|
|
|
|
echo -e '\nLet us delete them and try colors once more . . .\n'
|
|
|
|
for i in red light_green blue green light_gray cyan; do
|
|
hash_unset colors $i
|
|
done
|
|
hash_foreach colors try_colors
|
|
hash_echo colors reset_color -en
|
|
|
|
hash_set other txt "Other examples . . ."
|
|
hash_echo other txt
|
|
hash_get_into other txt text
|
|
echo $text
|
|
|
|
hash_set other my_fun try_colors
|
|
hash_call other my_fun purple "`hash_echo colors purple`"
|
|
hash_echo colors reset_color -en
|
|
|
|
echo; echo "Back to normal?"; echo
|
|
|
|
exit $?
|
|
|
|
# On some terminals, the "light" colors print in bold,
|
|
# and end up looking darker than the normal ones.
|
|
# Why is this?
|
|
|