# HG changeset patch # User Paul Boddie # Date 1533128834 -7200 # Node ID 413a230ce132de4a5501b96494d8b0c465c61511 # Parent 052c74f15a0a373ad16cbe7b8f9b3ccc1b37215e Isolate region types from the complete region argument string. diff -r 052c74f15a0a -r 413a230ce132 moinformat/parsers/common.py --- a/moinformat/parsers/common.py Wed Aug 01 15:06:25 2018 +0200 +++ b/moinformat/parsers/common.py Wed Aug 01 15:07:14 2018 +0200 @@ -376,7 +376,8 @@ """ if self.read_until(["header"], False) == "": # None means no header - region.type = self.match_group("args") + region.args = self.match_group("args") + region.type = region.args.split(" ", 1)[0] # Parsing utilities. diff -r 052c74f15a0a -r 413a230ce132 moinformat/tree/moin.py --- a/moinformat/tree/moin.py Wed Aug 01 15:06:25 2018 +0200 +++ b/moinformat/tree/moin.py Wed Aug 01 15:07:14 2018 +0200 @@ -146,11 +146,13 @@ "A region of the page." - def __init__(self, nodes, level=0, indent=0, type=None, transparent=True, extra=None): + def __init__(self, nodes, level=0, indent=0, type=None, args=None, + transparent=True, extra=None): Container.__init__(self, nodes) self.level = level self.indent = indent self.type = type + self.args = args self.transparent = transparent self.extra = extra @@ -174,12 +176,12 @@ return self.level and s.startswith("}") and self.level == len(s) def __repr__(self): - return "Region(%r, %r, %r, %r, %r, %r)" % (self.nodes, self.level, - self.indent, self.type, self.transparent, self.extra) + return "Region(%r, %r, %r, %r, %r, %r, %r)" % (self.nodes, self.level, + self.indent, self.type, self.args, self.transparent, self.extra) def prettyprint(self, indent=""): - l = ["%sRegion: level=%d indent=%d type=%s extra=%r" % (indent, - self.level, self.indent, self.type, self.extra)] + l = ["%sRegion: level=%d indent=%d type=%s args=%r extra=%r" % (indent, + self.level, self.indent, self.type, self.args, self.extra)] return self._prettyprint(l, indent) def to_string(self, out):