From cb8ca86edb8778295e8df6b7ea2643c1d128a591 Mon Sep 17 00:00:00 2001 From: Henning Glawe <glaweh@debian.org> Date: Thu, 10 Nov 2016 10:18:16 +0100 Subject: [PATCH] allow for custom highlighting via 'highlighted' minfo field --- common/python/nomadcore/annotator.py | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/common/python/nomadcore/annotator.py b/common/python/nomadcore/annotator.py index c6d9f73..aba65b4 100644 --- a/common/python/nomadcore/annotator.py +++ b/common/python/nomadcore/annotator.py @@ -52,18 +52,22 @@ class Annotator(object): matchlabel += minfo['which_re'] else: matchlabel = 'no' - # highlight line - if minfo['coverageIgnore']: - highlighted = self.matchHighlighter.highlight_minfo( - minfo, linecolor=ANSI.FG_BLUE) - elif minfo['match']: - if minfo['matcher_does_nothing']: + + # check if there is pre-highlighted data in minfo + highlighted = minfo.get('highlighted', None) + if highlighted is None: + # highlight line + if minfo['coverageIgnore']: highlighted = self.matchHighlighter.highlight_minfo( - minfo, linecolor=ANSI.FG_MAGENTA) + minfo, linecolor=ANSI.FG_BLUE) + elif minfo['match']: + if minfo['matcher_does_nothing']: + highlighted = self.matchHighlighter.highlight_minfo( + minfo, linecolor=ANSI.FG_MAGENTA) + else: + highlighted = self.matchHighlighter.highlight_minfo(minfo) else: - highlighted = self.matchHighlighter.highlight_minfo(minfo) - else: - highlighted = minfo['fInLine'] + highlighted = minfo['fInLine'] # shorted matcher- and source file names name = minfo['matcherName'][-self._formatNameWidth:] if minfo['matcherName'] else 'UNNAMED' defFile = minfo['defFile'][-self._formatSourceWidth:] -- GitLab