plugins: stop using match as name

In Python 3.10 match will become a soft keyword. The program would still
work but syntax highlighting is getting weird.
This commit is contained in:
dece 2022-06-08 17:12:33 +02:00
parent edbc35aa19
commit b6929c9453
4 changed files with 22 additions and 22 deletions

View file

@ -183,8 +183,8 @@ class Plugin:
return True return True
return False return False
def __save_question(self, question, match, preamble): def __save_question(self, question, matched, preamble):
content = question[len(match):].strip() content = question[len(matched):].strip()
content = content.rstrip("?").rstrip() content = content.rstrip("?").rstrip()
question = Question(preamble, content) question = Question(preamble, content)
self.question = question self.question = question
@ -228,23 +228,23 @@ class Plugin:
# If no_content is False (default), simply compare the parsed # If no_content is False (default), simply compare the parsed
# identifier with available identifiers. # identifier with available identifiers.
if no_content: if no_content:
match = lambda pc, ai: ( matches = lambda pc, ai: (
pc.raw == ai or pc.raw.startswith(ai + " ") pc.raw == ai or pc.raw.startswith(ai + " ")
) )
else: else:
match = lambda pc, ai: pc.ident == ai matches = lambda pc, ai: pc.ident == ai
# First case: the command identifier has been used. # First case: the command identifier has been used.
if match(parsed_command, ident): if matches(parsed_command, ident):
parsed_command.ident = ident parsed_command.ident = ident
parsed_command.match = ident parsed_command.matched = ident
self.__save_command(parsed_command) self.__save_command(parsed_command)
return True return True
# Second case: an alias of the identifier has been used. # Second case: an alias of the identifier has been used.
ident_aliases = aliases.get(ident, []) ident_aliases = aliases.get(ident, [])
for alias in ident_aliases: for alias in ident_aliases:
if match(parsed_command, alias): if matches(parsed_command, alias):
parsed_command.ident = ident parsed_command.ident = ident
parsed_command.match = alias parsed_command.matched = alias
self.__save_command(parsed_command) self.__save_command(parsed_command)
return True return True
return False return False
@ -313,4 +313,4 @@ class Command:
# Raw command content (minus name and suffix), always set. # Raw command content (minus name and suffix), always set.
raw: str raw: str
# Identifier matched, possibly an alias. Set only when matched. # Identifier matched, possibly an alias. Set only when matched.
match: str = "" matched: str = ""

View file

@ -29,11 +29,11 @@ class CaptureGivePlugin(Plugin):
# "give" command. # "give" command.
if self.command.ident == self.config["commands"][0]: if self.command.ident == self.config["commands"][0]:
content = self.command.raw[len(self.command.match):].strip() content = self.command.raw[len(self.command.matched):].strip()
match = self.content_re.match(content) matched = self.content_re.matched(content)
if not match: if not matched:
return False return False
groups = match.groupdict() groups = matched.groupdict()
if any(k not in groups for k in ("thing", "person")): if any(k not in groups for k in ("thing", "person")):
return False return False
thing = groups["thing"] thing = groups["thing"]

View file

@ -32,11 +32,11 @@ class NotesPlugin(Plugin):
# "note down" command. # "note down" command.
if self.command.ident == self.config["commands"][0]: if self.command.ident == self.config["commands"][0]:
content = self.command.raw[len(self.command.match):].strip() content = self.command.raw[len(self.command.matched):].strip()
match = self.content_re.match(content) matched = self.content_re.match(content)
if not match: if not matched:
return False return False
groups = match.groupdict() groups = matched.groupdict()
if any(k not in groups for k in ("target", "note")): if any(k not in groups for k in ("target", "note")):
return False return False
target = groups["target"] target = groups["target"]

View file

@ -37,13 +37,13 @@ class YoutubeParserPlugin(Plugin):
return False return False
words = event.arguments[0].split() words = event.arguments[0].split()
for word in words: for word in words:
match = self.VIDEO_URL_RE.match(word) matched = self.VIDEO_URL_RE.match(word)
if match: if matched:
return self.handle_match(match, event.target) return self.handle_match(matched, event.target)
return False return False
def handle_match(self, match, target): def handle_match(self, matched, target):
groupdict = match.groupdict() groupdict = matched.groupdict()
code = groupdict.get("code1") or groupdict.get("code2") code = groupdict.get("code1") or groupdict.get("code2")
if not code: if not code:
return False return False