From 00daee5c5839e85178abc802cdb3da99a1bc717e Mon Sep 17 00:00:00 2001 From: Urban Wallasch Date: Wed, 30 Jun 2021 16:48:39 +0200 Subject: [PATCH] * Fixed highlighting in Katakana readings, reworked result formatting. --- jiten-pai.py | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/jiten-pai.py b/jiten-pai.py index 9e85a6c..86f28f4 100755 --- a/jiten-pai.py +++ b/jiten-pai.py @@ -1447,32 +1447,30 @@ class jpMainWindow(QMainWindow): if res[0] == '#': html[idx+1] = '

Matches in %s:

' % res[1] continue - if len(res) > 3: - verb_message = 'Possible inflected verb or adjective: %s
' % res[3][1] - re_inf = re.compile(res[3][0], re.IGNORECASE) # render edict2 priority markers in small font (headwords only) res[0] = re_mark.sub(r'\1', res[0]) # line break edict2 multi-headword entries res[0] = res[0].replace(';', '
') + # parenthesize reading + if len(res[1]) > 0: + res[1] = '(%s)' % res[1] # for now just drop the edict2 entry number part, # in future this could be used to e.g. link somewhere relevant res[2] = re_entity.sub('', res[2]) # highlight matches + verb_message = '' if mode == ScanMode.JAP: if len(res) > 3: - res[0] = re_inf.sub(lambda m: hl_repl(m, res[0]), kata2hira(res[0])) - res[1] = re_inf.sub(hl_repl, res[1]) + verb_message = 'Possible inflected verb or adjective: %s
' % res[3].blurb + rex = re.compile(res[3].inf, re.IGNORECASE) else: - res[0] = re_term.sub(lambda m: hl_repl(m, res[0]), kata2hira(res[0])) - res[1] = re_term.sub(hl_repl, res[1]) + rex = re_term + res[0] = rex.sub(lambda m: hl_repl(m, res[0]), kata2hira(res[0])) + res[1] = rex.sub(lambda m: hl_repl(m, res[1]), kata2hira(res[1])) else: res[2] = re_term.sub(hl_repl, res[2]) - # construct display line - html[idx+1] = '

%s%s%s%s %s

\n' \ - % ((verb_message if len(res)>3 else ''), \ - lfmt, res[0],\ - (' (%s)'%res[1] if len(res[1]) > 0 else ''),\ - res[2]) + # assemble display line + html[idx+1] = '

%s%s%s%s %s

\n' % (verb_message, lfmt, res[0], res[1], res[2]) html[rlen + 1] = '' self.result_pane.setHtml(''.join(html)) self.result_pane.setEnabled(True) -- 2.30.2