Mercurial > hg-stable
changeset 30992:a3c7e42c7a1f
color: move '_effect_str' function into the core module
author | Pierre-Yves David <pierre-yves.david@ens-lyon.org> |
---|---|
date | Thu, 22 Dec 2016 02:37:18 +0100 |
parents | bb6385882cfa |
children | e5363cb96233 |
files | hgext/color.py mercurial/color.py |
diffstat | 2 files changed, 23 insertions(+), 23 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/color.py Thu Dec 22 02:34:22 2016 +0100 +++ b/hgext/color.py Thu Dec 22 02:37:18 2016 +0100 @@ -297,27 +297,6 @@ return realmode return None -def _effect_str(effect): - '''Helper function for render_effects().''' - - bg = False - if effect.endswith('_background'): - bg = True - effect = effect[:-11] - try: - attr, val, termcode = color._terminfo_params[effect] - except KeyError: - return '' - if attr: - if termcode: - return termcode - else: - return curses.tigetstr(val) - elif bg: - return curses.tparm(curses.tigetstr('setab'), val) - else: - return curses.tparm(curses.tigetstr('setaf'), val) - def render_effects(text, effects): 'Wrap text in commands to turn on each effect.' if not text: @@ -327,9 +306,9 @@ start = '\033[' + ';'.join(start) + 'm' stop = '\033[' + str(color._effects['none']) + 'm' else: - start = ''.join(_effect_str(effect) + start = ''.join(color._effect_str(effect) for effect in ['none'] + effects.split()) - stop = _effect_str('none') + stop = color._effect_str('none') return ''.join([start, text, stop]) class colorui(uimod.ui):
--- a/mercurial/color.py Thu Dec 22 02:34:22 2016 +0100 +++ b/mercurial/color.py Thu Dec 22 02:37:18 2016 +0100 @@ -137,3 +137,24 @@ return ((not _terminfo_params and effect in _effects) or (effect in _terminfo_params or effect[:-11] in _terminfo_params)) + +def _effect_str(effect): + '''Helper function for render_effects().''' + + bg = False + if effect.endswith('_background'): + bg = True + effect = effect[:-11] + try: + attr, val, termcode = _terminfo_params[effect] + except KeyError: + return '' + if attr: + if termcode: + return termcode + else: + return curses.tigetstr(val) + elif bg: + return curses.tparm(curses.tigetstr('setab'), val) + else: + return curses.tparm(curses.tigetstr('setaf'), val)