Re: [PATCH] color: replace "purple_background" by "magenta_background"

2016-10-14 Thread Denis Laxalde

Pierre-Yves David a écrit :

On 10/11/2016 11:39 AM, Denis Laxalde wrote:

# HG changeset patch
# User Denis Laxalde 
# Date 1476176128 -7200
#  Tue Oct 11 10:55:28 2016 +0200
# Node ID 1cf20c1c54cb8172816604de5e1d98d3cd62d711
# Parent  b85fa6bf298be07804a74d8fdec0d19fdbc6d740
# EXP-Topic color-purple-crash
color: replace "purple_background" by "magenta_background"


We probably want to keep both value around for backward compatibility
reason.


Aggreed.


I'm also a bit curious about what all this is about. Can I convinced you
to dig it a bit further?


Not sure how deep you'd like me to dig. This occurs with "terminfo" 
color mode. So, to reproduce:


HGRCPATH= hg --config extensions.color= --config 
color.mode=terminfo debugcolor



--
Denis Laxalde
Logilab http://www.logilab.fr
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


Re: [PATCH] color: replace "purple_background" by "magenta_background"

2016-10-13 Thread Danek Duvall
Pierre-Yves David wrote:

> 
> 
> On 10/11/2016 11:39 AM, Denis Laxalde wrote:
> ># HG changeset patch
> ># User Denis Laxalde 
> ># Date 1476176128 -7200
> >#  Tue Oct 11 10:55:28 2016 +0200
> ># Node ID 1cf20c1c54cb8172816604de5e1d98d3cd62d711
> ># Parent  b85fa6bf298be07804a74d8fdec0d19fdbc6d740
> ># EXP-Topic color-purple-crash
> >color: replace "purple_background" by "magenta_background"
> 
> We probably want to keep both value around for backward compatibility
> reason.
> 
> I'm also a bit curious about what all this is about. Can I convinced you to
> dig it a bit further?

_effect_str() strips "_background" off of an effect name to grab the color
name so it can figure out what color code to use.  Since we define
"purple_background", but "magenta" instead of "purple" (and
"magenta_background" doesn't exist, either), then this blows up.

I'll be sending out a patch shortly that just covers up this KeyError, but
either defining purple or magenta_background (or, probably, both) probably
ought to be done, anyway.

Danek

> >`hg debugcolor` crashes on my terminal:
> >
> >  File "/usr/lib/python2.7/dist-packages/hgext/color.py", line 530, in 
> > debugcolor
> >ui.write(('%s\n') % colors, label=label)
> >  File "/usr/lib/python2.7/dist-packages/hgext/color.py", line 446, in 
> > write
> >*[self.label(a, label) for a in args], **opts)
> >  File "/usr/lib/python2.7/dist-packages/hgext/color.py", line 488, in 
> > label
> >for s in msg.split('\n')])
> >  File "/usr/lib/python2.7/dist-packages/hgext/color.py", line 396, in 
> > render_effects
> >for effect in ['none'] + effects.split())
> >  File "/usr/lib/python2.7/dist-packages/hgext/color.py", line 396, in 
> > 
> >for effect in ['none'] + effects.split())
> >  File "/usr/lib/python2.7/dist-packages/hgext/color.py", line 378, in 
> > _effect_str
> >attr, val = _terminfo_params[effect]
> >KeyError: 'purple'
> >
> >Not sure where this "purple" comes (been there from initial file check in)
> >from but "magenta" seems more appropriate.
> >
> >diff --git a/hgext/color.py b/hgext/color.py
> >--- a/hgext/color.py
> >+++ b/hgext/color.py
> >@@ -182,7 +182,7 @@ testedwith = 'ships-with-hg-core'
> > 'italic': 3, 'underline': 4, 'inverse': 7, 'dim': 2,
> > 'black_background': 40, 'red_background': 41,
> > 'green_background': 42, 'yellow_background': 43,
> >-'blue_background': 44, 'purple_background': 45,
> >+'blue_background': 44, 'magenta_background': 45,
> > 'cyan_background': 46, 'white_background': 47}
> >
> > def _terminfosetup(ui, mode):
> >@@ -591,7 +591,7 @@ else:
> > 'green_background': _BACKGROUND_GREEN,
> > 'yellow_background': _BACKGROUND_RED | _BACKGROUND_GREEN,
> > 'blue_background': _BACKGROUND_BLUE,
> >-'purple_background': _BACKGROUND_BLUE | _BACKGROUND_RED,
> >+'magenta_background': _BACKGROUND_BLUE | _BACKGROUND_RED,
> > 'cyan_background': _BACKGROUND_BLUE | _BACKGROUND_GREEN,
> > 'white_background': (_BACKGROUND_RED | _BACKGROUND_GREEN |
> >  _BACKGROUND_BLUE),
> >___
> >Mercurial-devel mailing list
> >Mercurial-devel@mercurial-scm.org
> >https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
> >
> 
> -- 
> Pierre-Yves David
> ___
> Mercurial-devel mailing list
> Mercurial-devel@mercurial-scm.org
> https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


Re: [PATCH] color: replace "purple_background" by "magenta_background"

2016-10-13 Thread Pierre-Yves David



On 10/11/2016 11:39 AM, Denis Laxalde wrote:

# HG changeset patch
# User Denis Laxalde 
# Date 1476176128 -7200
#  Tue Oct 11 10:55:28 2016 +0200
# Node ID 1cf20c1c54cb8172816604de5e1d98d3cd62d711
# Parent  b85fa6bf298be07804a74d8fdec0d19fdbc6d740
# EXP-Topic color-purple-crash
color: replace "purple_background" by "magenta_background"


We probably want to keep both value around for backward compatibility 
reason.


I'm also a bit curious about what all this is about. Can I convinced you 
to dig it a bit further?



`hg debugcolor` crashes on my terminal:

  File "/usr/lib/python2.7/dist-packages/hgext/color.py", line 530, in 
debugcolor
ui.write(('%s\n') % colors, label=label)
  File "/usr/lib/python2.7/dist-packages/hgext/color.py", line 446, in write
*[self.label(a, label) for a in args], **opts)
  File "/usr/lib/python2.7/dist-packages/hgext/color.py", line 488, in label
for s in msg.split('\n')])
  File "/usr/lib/python2.7/dist-packages/hgext/color.py", line 396, in 
render_effects
for effect in ['none'] + effects.split())
  File "/usr/lib/python2.7/dist-packages/hgext/color.py", line 396, in 

for effect in ['none'] + effects.split())
  File "/usr/lib/python2.7/dist-packages/hgext/color.py", line 378, in 
_effect_str
attr, val = _terminfo_params[effect]
KeyError: 'purple'

Not sure where this "purple" comes (been there from initial file check in)
from but "magenta" seems more appropriate.

diff --git a/hgext/color.py b/hgext/color.py
--- a/hgext/color.py
+++ b/hgext/color.py
@@ -182,7 +182,7 @@ testedwith = 'ships-with-hg-core'
 'italic': 3, 'underline': 4, 'inverse': 7, 'dim': 2,
 'black_background': 40, 'red_background': 41,
 'green_background': 42, 'yellow_background': 43,
-'blue_background': 44, 'purple_background': 45,
+'blue_background': 44, 'magenta_background': 45,
 'cyan_background': 46, 'white_background': 47}

 def _terminfosetup(ui, mode):
@@ -591,7 +591,7 @@ else:
 'green_background': _BACKGROUND_GREEN,
 'yellow_background': _BACKGROUND_RED | _BACKGROUND_GREEN,
 'blue_background': _BACKGROUND_BLUE,
-'purple_background': _BACKGROUND_BLUE | _BACKGROUND_RED,
+'magenta_background': _BACKGROUND_BLUE | _BACKGROUND_RED,
 'cyan_background': _BACKGROUND_BLUE | _BACKGROUND_GREEN,
 'white_background': (_BACKGROUND_RED | _BACKGROUND_GREEN |
  _BACKGROUND_BLUE),
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel



--
Pierre-Yves David
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel