From 6e4f1bd23cbb3332fa1d4f1e570420b743e01296 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Sat, 10 Mar 2012 23:15:31 -0500 Subject: portageq: add "colormap" helper Signed-off-by: Mike Frysinger --- bin/isolated-functions.sh | 2 +- bin/portageq | 8 ++++++++ pym/portage/output.py | 6 ++++++ pym/portage/package/ebuild/doebuild.py | 8 ++------ 4 files changed, 17 insertions(+), 7 deletions(-) diff --git a/bin/isolated-functions.sh b/bin/isolated-functions.sh index 9321ad598..98be41ec0 100644 --- a/bin/isolated-functions.sh +++ b/bin/isolated-functions.sh @@ -431,8 +431,8 @@ set_colors() { BAD=$'\e[31;01m' HILITE=$'\e[36;01m' BRACKET=$'\e[34;01m' + NORMAL=$'\e[0m' fi - NORMAL=$'\e[0m' } RC_ENDCOL="yes" diff --git a/bin/portageq b/bin/portageq index 5ecbb21ca..fcdb9d963 100755 --- a/bin/portageq +++ b/bin/portageq @@ -44,6 +44,7 @@ del pym_path from portage import os from portage.eapi import eapi_has_repo_deps from portage.util import writemsg, writemsg_stdout +from portage.output import colormap portage.proxy.lazyimport.lazyimport(globals(), 'subprocess', '_emerge.Package:Package', @@ -685,6 +686,13 @@ def distdir(argv): print(portage.settings["DISTDIR"]) +def colormap(argv): + """ + Display the color.map as environment variables. + """ + print(portage.output.colormap()) + + def envvar(argv): """+ Returns a specific environment variable as exists prior to ebuild.sh. diff --git a/pym/portage/output.py b/pym/portage/output.py index 43d75036e..98bec8143 100644 --- a/pym/portage/output.py +++ b/pym/portage/output.py @@ -325,6 +325,12 @@ def style_to_ansi_code(style): ret += codes.get(attr_name, attr_name) return ret +def colormap(): + mycolors = [] + for c in ("GOOD", "WARN", "BAD", "HILITE", "BRACKET", "NORMAL"): + mycolors.append("%s=$'%s'" % (c, style_to_ansi_code(c))) + return "\n".join(mycolors) + def colorize(color_key, text): global havecolor if havecolor: diff --git a/pym/portage/package/ebuild/doebuild.py b/pym/portage/package/ebuild/doebuild.py index c45aa030a..4ff3eeaf7 100644 --- a/pym/portage/package/ebuild/doebuild.py +++ b/pym/portage/package/ebuild/doebuild.py @@ -50,7 +50,7 @@ from portage.exception import DigestException, FileNotFound, \ IncorrectParameter, InvalidDependString, PermissionDenied, \ UnsupportedAPIException from portage.localization import _ -from portage.output import style_to_ansi_code +from portage.output import colormap from portage.package.ebuild.prepare_build_dirs import prepare_build_dirs from portage.util import apply_recursive_permissions, \ apply_secpass_permissions, noiselimit, normalize_path, \ @@ -300,11 +300,7 @@ def doebuild_environment(myebuild, mydo, myroot=None, settings=None, mysettings["PORTAGE_CONFIGROOT"], EBUILD_SH_ENV_DIR) # Allow color.map to control colors associated with einfo, ewarn, etc... - mycolors = [] - for c in ("GOOD", "WARN", "BAD", "HILITE", "BRACKET"): - mycolors.append("%s=$'%s'" % \ - (c, style_to_ansi_code(c))) - mysettings["PORTAGE_COLORMAP"] = "\n".join(mycolors) + mysettings["PORTAGE_COLORMAP"] = colormap() if "COLUMNS" not in mysettings: # Set COLUMNS, in order to prevent unnecessary stty calls -- cgit v1.2.3-1-g7c22