From 5fbc3737d54a28a4e92b56b0536d976b6e29f9a4 Mon Sep 17 00:00:00 2001 From: benne238 Date: Wed, 30 Jun 2021 16:43:42 -0400 Subject: [PATCH] modified the edit rule to expect only a single line delimiter and made the skipTo look for delimiters at the begining of the line --- src/webqueue2api/parser/parser.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/webqueue2api/parser/parser.py b/src/webqueue2api/parser/parser.py index 664ad12..3683dc7 100644 --- a/src/webqueue2api/parser/parser.py +++ b/src/webqueue2api/parser/parser.py @@ -249,15 +249,16 @@ def error_handler(original_string, match_start_index, tokens): ).leaveWhitespace().setParseAction(parse_section_by_type("reply_to_user")) edit_rule = ( + pp.LineStart() + pp.Literal(edit_start_delimiter).suppress() + pp.Word(pp.alphanums).setResultsName("by") + pp.Literal(" at: ").suppress() + - pp.SkipTo(action_end_delimiter + pp.LineEnd()).setResultsName("datetime") + + pp.Word(pp.nums + "/-: ").setResultsName("datetime") + (pp.Literal(action_end_delimiter) + pp.LineEnd()).suppress() + pp.Group( pp.SkipTo( pp.Literal(reply_from_user_start_delimiter) - | pp.Literal(action_start_delimiter) + | (pp.LineStart() + pp.Literal(action_start_delimiter)) ) | pp.SkipTo(pp.StringEnd(), include=True) ).setResultsName("content") ).leaveWhitespace().setParseAction(parse_section_by_type("edit"))