diff options
author | Dave Reisner <dreisner@archlinux.org> | 2013-01-21 18:53:26 +0100 |
---|---|---|
committer | Dave Reisner <dreisner@archlinux.org> | 2013-01-21 19:51:41 +0100 |
commit | abb3d580e49b8b28c161a047012c7121767d3b3c (patch) | |
tree | 48dca64f8aa53f8f954d58e0d486b9c424ce9a28 /functions | |
parent | 1257d537a3ff62e2c543afb1ef4f807a003c9f2f (diff) | |
download | mkinitcpio-abb3d580e49b8b28c161a047012c7121767d3b3c.tar.gz mkinitcpio-abb3d580e49b8b28c161a047012c7121767d3b3c.tar.xz |
Do more to determine the color caps of the term
823e24 wasn't really correct, since running 'tput setaf 0' effectively
sanity checks the terminfo as well as checking existance. However, it
does nothing to affirm that the terminal is capable of supporting
colors.
Moreover, *never* fall back on the hardcoded escapes as doing so implies
that we've found a broken terminfo and we have no idea what the terminal
is capable of doing.
This reverts commit 823e2454176d4381cd3acc30481e9d84cdc298b1.
Diffstat (limited to 'functions')
-rw-r--r-- | functions | 18 |
1 files changed, 18 insertions, 0 deletions
@@ -668,4 +668,22 @@ run_build_hook() { return 0 } +try_enable_color() { + local colors + + if ! colors=$(tput colors 2>/dev/null); then + warning "Failed to enable color. Check your TERM environment variable" + return + fi + + if (( colors > 0 )) && tput setaf 0 &>/dev/null; then + _color_none=$(tput sgr0) + _color_bold=$(tput bold) + _color_blue=$_color_bold$(tput setaf 4) + _color_green=$_color_bold$(tput setaf 2) + _color_red=$_color_bold$(tput setaf 1) + _color_yellow=$_color_bold$(tput setaf 3) + fi +} + # vim: set ft=sh ts=4 sw=4 et: |