hgext/color.py
changeset 31085 3422de9b657e
parent 31084 1482b57701ad
child 31086 e6082078c853
equal deleted inserted replaced
31084:1482b57701ad 31085:3422de9b657e
   329                 *[self.label(a, label) for a in args], **opts)
   329                 *[self.label(a, label) for a in args], **opts)
   330 
   330 
   331     def label(self, msg, label):
   331     def label(self, msg, label):
   332         if self._colormode is None:
   332         if self._colormode is None:
   333             return super(colorui, self).label(msg, label)
   333             return super(colorui, self).label(msg, label)
   334 
   334         return colorlabel(self, msg, label)
   335         if self._colormode == 'debug':
   335 
   336             if label and msg:
   336 def colorlabel(ui, msg, label):
   337                 if msg[-1] == '\n':
   337     """add color control code according to the mode"""
   338                     return "[%s|%s]\n" % (label, msg[:-1])
   338     if ui._colormode == 'debug':
   339                 else:
   339         if label and msg:
   340                     return "[%s|%s]" % (label, msg)
   340             if msg[-1] == '\n':
       
   341                 msg = "[%s|%s]\n" % (label, msg[:-1])
   341             else:
   342             else:
   342                 return msg
   343                 msg = "[%s|%s]" % (label, msg)
   343 
   344     elif ui._colormode is not None:
   344         effects = []
   345         effects = []
   345         for l in label.split():
   346         for l in label.split():
   346             s = color._styles.get(l, '')
   347             s = color._styles.get(l, '')
   347             if s:
   348             if s:
   348                 effects.append(s)
   349                 effects.append(s)
   349             elif color.valideffect(l):
   350             elif color.valideffect(l):
   350                 effects.append(l)
   351                 effects.append(l)
   351         effects = ' '.join(effects)
   352         effects = ' '.join(effects)
   352         if effects:
   353         if effects:
   353             return '\n'.join([color._render_effects(line, effects)
   354             msg = '\n'.join([color._render_effects(line, effects)
   354                               for line in msg.split('\n')])
   355                              for line in msg.split('\n')])
   355         return msg
   356     return msg
   356 
   357 
   357 def uisetup(ui):
   358 def uisetup(ui):
   358     if ui.plain():
   359     if ui.plain():
   359         return
   360         return
   360     if not isinstance(ui, colorui):
   361     if not isinstance(ui, colorui):