1.1 --- a/moinformat/parsers/graphviz.py Tue Nov 27 21:17:34 2018 +0100
1.2 +++ b/moinformat/parsers/graphviz.py Tue Nov 27 21:23:24 2018 +0100
1.3 @@ -43,16 +43,10 @@
1.4 "Handle format directives."
1.5
1.6 directive = self.match_group("directive")
1.7 + key = self.match_group("key")
1.8 + value = self.match_group("value")
1.9
1.10 - if directive:
1.11 - t = directive.split(None, 1)
1.12 - key = t[0]
1.13 - value = len(t) > 1 and t[1] or None
1.14 - else:
1.15 - key = self.match_group("key")
1.16 - value = self.match_group("value")
1.17 -
1.18 - self.add_node(region, Directive(key, value))
1.19 + self.add_node(region, Directive(key, value, directive))
1.20 self.new_block(region)
1.21
1.22
2.1 --- a/moinformat/serialisers/html/graphviz.py Tue Nov 27 21:17:34 2018 +0100
2.2 +++ b/moinformat/serialisers/html/graphviz.py Tue Nov 27 21:23:24 2018 +0100
2.3 @@ -57,7 +57,7 @@
2.4 def end_block(self):
2.5 pass
2.6
2.7 - def directive(self, key, value):
2.8 + def directive(self, key, value, directive):
2.9 if not self.directives.has_key(key):
2.10 self.directives[key] = []
2.11 self.directives[key].append(value)
3.1 --- a/moinformat/serialisers/moin/graphviz.py Tue Nov 27 21:17:34 2018 +0100
3.2 +++ b/moinformat/serialisers/moin/graphviz.py Tue Nov 27 21:23:24 2018 +0100
3.3 @@ -31,8 +31,11 @@
3.4 def end_block(self):
3.5 pass
3.6
3.7 - def directive(self, key, value):
3.8 - self.out("#%s%s\n" % (value and "%s " % key or key, value or ""))
3.9 + def directive(self, key, value, directive):
3.10 + if directive:
3.11 + self.out("#%s\n" % directive)
3.12 + else:
3.13 + self.out("//%s%s\n" % (value and "%s=" % key or key, value or ""))
3.14
3.15 def text(self, text):
3.16 self.out(text)
4.1 --- a/moinformat/tree/graphviz.py Tue Nov 27 21:17:34 2018 +0100
4.2 +++ b/moinformat/tree/graphviz.py Tue Nov 27 21:23:24 2018 +0100
4.3 @@ -25,17 +25,24 @@
4.4
4.5 "Format directive for Graphviz output."
4.6
4.7 - def __init__(self, key=None, value=None):
4.8 - self.key = key
4.9 - self.value = value
4.10 + def __init__(self, key=None, value=None, directive=None):
4.11 + self.directive = directive
4.12 +
4.13 + if key or value:
4.14 + self.key = key
4.15 + self.value = value
4.16 + else:
4.17 + t = directive.split(None, 1)
4.18 + self.key = t[0]
4.19 + self.value = len(t) > 1 and t[1] or None
4.20
4.21 def __repr__(self):
4.22 - return "Directive(%r, %r)" % (self.key, self.value)
4.23 + return "Directive(%r, %r, %r)" % (self.key, self.value, self.directive)
4.24
4.25 def prettyprint(self, indent=""):
4.26 - return "%sDirective: key=%r value=%r" % (indent, self.key, self.value)
4.27 + return "%sDirective: key=%r value=%r directive=%r" % (indent, self.key, self.value, self.directive)
4.28
4.29 def to_string(self, out):
4.30 - out.directive(self.key, self.value)
4.31 + out.directive(self.key, self.value, self.directive)
4.32
4.33 # vim: tabstop=4 expandtab shiftwidth=4