Tput
From wikinotes
The Termcap DB is a library/db that abstracts control codes to manipulate a terminal.
The tput
command can interact with it from shellscript.
Documentation
man tput
https://man.archlinux.org/man/core/ncurses/tput.1.en
Console Info
tput lines # height of terminal in chars tput cols # width of terminal in chars
Text Formatting
# colour tput setaf 1 # set foreground colour to 1/255 (red) tput setab 1 # set foreground colour to 1/255 (red) # weight tput bold # bold tput smul # underline # reset tput sgr0 # reset formatting
Help Menu Colouring
I wrote and use this a lot.
setup_colours() { if [ $(tput colors) -gt 8 ] ; then C=$(tput setaf 6) # code H=$(tput setaf 3) # heading E=$(tput setaf 1) # error B=$(tput bold) # bold R=$(tput sgr0) # reset else C=$(tput sgr0) H=$(tput sgr0) E=$(tput sgr0) B=$(tput sgr0) R=$(tput sgr0) fi }