Skip to content
Snippets Groups Projects
Commit bb638588 authored by Pierre-Yves David's avatar Pierre-Yves David
Browse files

color: move configstyles into the core module

The extension is getting thinner as we speak!
parent 683606a8
No related branches found
No related tags found
No related merge requests found
......@@ -332,22 +332,6 @@
stop = _effect_str('none')
return ''.join([start, text, stop])
def configstyles(ui):
for status, cfgeffects in ui.configitems('color'):
if '.' not in status or status.startswith(('color.', 'terminfo.')):
continue
cfgeffects = ui.configlist('color', status)
if cfgeffects:
good = []
for e in cfgeffects:
if color.valideffect(e):
good.append(e)
else:
ui.warn(_("ignoring unknown color/effect %r "
"(configured in color.%s)\n")
% (e, status))
color._styles[status] = ' '.join(good)
class colorui(uimod.ui):
_colormode = 'ansi'
def write(self, *args, **opts):
......@@ -420,7 +404,7 @@
mode = _modesetup(ui_, opts['color'])
colorui._colormode = mode
if mode and mode != 'debug':
configstyles(ui_)
color.configstyles(ui_)
return orig(ui_, opts, cmd, cmdfunc)
def colorgit(orig, gitsub, commands, env=None, stream=False, cwd=None):
if gitsub.ui._colormode and len(commands) and commands[0] == "diff":
......
......@@ -7,6 +7,8 @@
from __future__ import absolute_import
from .i18n import _
try:
import curses
# Mapping from effect name to terminfo attribute name (or raw code) or
......@@ -114,6 +116,22 @@
def loadcolortable(ui, extname, colortable):
_styles.update(colortable)
def configstyles(ui):
for status, cfgeffects in ui.configitems('color'):
if '.' not in status or status.startswith(('color.', 'terminfo.')):
continue
cfgeffects = ui.configlist('color', status)
if cfgeffects:
good = []
for e in cfgeffects:
if valideffect(e):
good.append(e)
else:
ui.warn(_("ignoring unknown color/effect %r "
"(configured in color.%s)\n")
% (e, status))
_styles[status] = ' '.join(good)
def valideffect(effect):
'Determine if the effect is valid or not.'
return ((not _terminfo_params and effect in _effects)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment