From b2c5ad041c9c6edeb39acd114f889429b4c32a41 Mon Sep 17 00:00:00 2001 From: jesopo Date: Sat, 21 Dec 2019 21:40:44 +0000 Subject: [PATCH] simplify token replace, catch one-char end-of-string tokens --- src/utils/parse.py | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/src/utils/parse.py b/src/utils/parse.py index 5beb4637..d1b66cf3 100644 --- a/src/utils/parse.py +++ b/src/utils/parse.py @@ -129,17 +129,13 @@ def format_tokens(s: str, names: typing.List[str], sigil: str="$" while i < max: if s[i] == sigil: - if s[i+1] == sigil: + if not s[i+1] == sigil: i += 1 - else: - sigil_found = True - elif sigil_found: - sigil_found = False - for name in names: - if len(name) <= (len(s)-i) and s[i:i+len(name)] == name: - tokens.append((i-1, "%s%s" % (sigil, name))) - i += len(name) - break + for name in names: + if len(name) <= (len(s)-i) and s[i:i+len(name)] == name: + tokens.append((i-1, "%s%s" % (sigil, name))) + i += len(name) + break i += 1 return tokens