From 7e4e54c332954d04f3d72dbdf9d9760621306ae7 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Tue, 17 Jun 2008 03:32:04 +0000 Subject: [PATCH] Add support for an new "eblank" elog function that shows a blank line. Consecutive eblank calls are all collapsed into a single blank line. Thanks to Joe Peterson for this patch. (trunk r10675) svn path=/main/branches/2.1.2/; revision=10676 --- bin/isolated-functions.sh | 18 +++++++++++++++++- pym/output.py | 1 + pym/portage.py | 2 +- 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/bin/isolated-functions.sh b/bin/isolated-functions.sh index 42f3d5ac7..dd157129d 100644 --- a/bin/isolated-functions.sh +++ b/bin/isolated-functions.sh @@ -161,7 +161,7 @@ elog_base() { local messagetype [ -z "${1}" -o -z "${T}" -o ! -d "${T}/logging" ] && return 1 case "${1}" in - INFO|WARN|ERROR|LOG|QA) + BLANK|INFO|WARN|ERROR|LOG|QA) messagetype="${1}" shift ;; @@ -174,15 +174,28 @@ elog_base() { return 0 } +eblank() { + [[ ${LAST_E_CMD} == "eblank" ]] && return 0 + elog_base BLANK + [[ ${RC_ENDCOL} != "yes" && ${LAST_E_CMD} == "ebegin" ]] && echo + echo -e " ${NEUTRAL}*${NORMAL}" + LAST_E_CMD="eblank" + return 0 +} + eqawarn() { elog_base QA "$*" + [[ ${RC_ENDCOL} != "yes" && ${LAST_E_CMD} == "ebegin" ]] && echo vecho -e " ${WARN}*${NORMAL} $*" >&2 + LAST_E_CMD="eqawarn" return 0 } elog() { elog_base LOG "$*" + [[ ${RC_ENDCOL} != "yes" && ${LAST_E_CMD} == "ebegin" ]] && echo echo -e " ${GOOD}*${NORMAL} $*" + LAST_E_CMD="elog" return 0 } @@ -281,6 +294,7 @@ eend() { _eend ${retval} eerror "$*" + LAST_E_CMD="eend" return ${retval} } @@ -339,6 +353,7 @@ unset_colors() { COLS="25 80" ENDCOL= + NEUTRAL= GOOD= WARN= BAD= @@ -361,6 +376,7 @@ set_colors() { if [ -n "${PORTAGE_COLORMAP}" ] ; then eval ${PORTAGE_COLORMAP} else + NEUTRAL=$'\e[37m' GOOD=$'\e[32;01m' WARN=$'\e[33;01m' BAD=$'\e[31;01m' diff --git a/pym/output.py b/pym/output.py index c00ab00d4..e53e74bfb 100644 --- a/pym/output.py +++ b/pym/output.py @@ -132,6 +132,7 @@ codes["bg_darkyellow"] = codes["bg_brown"] # Colors from /etc/init.d/functions.sh codes["NORMAL"] = esc_seq + "0m" +codes["NEUTRAL"] = codes["lightgray"] codes["GOOD"] = codes["green"] codes["WARN"] = codes["yellow"] codes["BAD"] = codes["red"] diff --git a/pym/portage.py b/pym/portage.py index 77ce475bd..f244f0153 100644 --- a/pym/portage.py +++ b/pym/portage.py @@ -4462,7 +4462,7 @@ def doebuild_environment(myebuild, mydo, myroot, mysettings, debug, use_cache, m # Allow color.map to control colors associated with einfo, ewarn, etc... mycolors = [] - for c in ("GOOD", "WARN", "BAD", "HILITE", "BRACKET"): + for c in ("NEUTRAL", "GOOD", "WARN", "BAD", "HILITE", "BRACKET"): mycolors.append("%s=$'%s'" % (c, output.codes[c])) mysettings["PORTAGE_COLORMAP"] = "\n".join(mycolors) -- 2.26.2