Show More
@@ -238,7 +238,6 def _modesetup(ui): | |||||
238 | if not w32effects: |
|
238 | if not w32effects: | |
239 | modewarn() |
|
239 | modewarn() | |
240 | return None |
|
240 | return None | |
241 | _effects.update(w32effects) |
|
|||
242 | elif realmode == 'ansi': |
|
241 | elif realmode == 'ansi': | |
243 | ui._terminfoparams.clear() |
|
242 | ui._terminfoparams.clear() | |
244 | elif realmode == 'terminfo': |
|
243 | elif realmode == 'terminfo': | |
@@ -271,9 +270,17 def configstyles(ui): | |||||
271 | % (e, status)) |
|
270 | % (e, status)) | |
272 | ui._styles[status] = ' '.join(good) |
|
271 | ui._styles[status] = ' '.join(good) | |
273 |
|
272 | |||
|
273 | def _activeeffects(ui): | |||
|
274 | '''Return the effects map for the color mode set on the ui.''' | |||
|
275 | if ui._colormode == 'win32': | |||
|
276 | return w32effects | |||
|
277 | elif ui._colormode is not None: | |||
|
278 | return _effects | |||
|
279 | return {} | |||
|
280 | ||||
274 | def valideffect(ui, effect): |
|
281 | def valideffect(ui, effect): | |
275 | 'Determine if the effect is valid or not.' |
|
282 | 'Determine if the effect is valid or not.' | |
276 | return ((not ui._terminfoparams and effect in _effects) |
|
283 | return ((not ui._terminfoparams and effect in _activeeffects(ui)) | |
277 | or (effect in ui._terminfoparams |
|
284 | or (effect in ui._terminfoparams | |
278 | or effect[:-11] in ui._terminfoparams)) |
|
285 | or effect[:-11] in ui._terminfoparams)) | |
279 |
|
286 | |||
@@ -324,9 +331,10 def _render_effects(ui, text, effects): | |||||
324 | for effect in ['none'] + effects.split()) |
|
331 | for effect in ['none'] + effects.split()) | |
325 | stop = _effect_str(ui, 'none') |
|
332 | stop = _effect_str(ui, 'none') | |
326 | else: |
|
333 | else: | |
327 | start = [str(_effects[e]) for e in ['none'] + effects.split()] |
|
334 | activeeffects = _activeeffects(ui) | |
|
335 | start = [str(activeeffects[e]) for e in ['none'] + effects.split()] | |||
328 | start = '\033[' + ';'.join(start) + 'm' |
|
336 | start = '\033[' + ';'.join(start) + 'm' | |
329 |
stop = '\033[' + str( |
|
337 | stop = '\033[' + str(activeeffects['none']) + 'm' | |
330 | return _mergeeffects(text, start, stop) |
|
338 | return _mergeeffects(text, start, stop) | |
331 |
|
339 | |||
332 | _ansieffectre = re.compile(br'\x1b\[[0-9;]*m') |
|
340 | _ansieffectre = re.compile(br'\x1b\[[0-9;]*m') |
@@ -360,7 +360,7 def debugcolor(ui, repo, **opts): | |||||
360 | def _debugdisplaycolor(ui): |
|
360 | def _debugdisplaycolor(ui): | |
361 | ui = ui.copy() |
|
361 | ui = ui.copy() | |
362 | ui._styles.clear() |
|
362 | ui._styles.clear() | |
363 | for effect in color._effects.keys(): |
|
363 | for effect in color._activeeffects(ui).keys(): | |
364 | ui._styles[effect] = effect |
|
364 | ui._styles[effect] = effect | |
365 | if ui._terminfoparams: |
|
365 | if ui._terminfoparams: | |
366 | for k, v in ui.configitems('color'): |
|
366 | for k, v in ui.configitems('color'): |
General Comments 0
You need to be logged in to leave comments.
Login now