Mercurial > genshi > mirror
diff markup/input.py @ 160:d19e8a2c549e trunk
Attribute order in parsed XML is now preserved.
author | cmlenz |
---|---|
date | Wed, 16 Aug 2006 21:54:49 +0000 |
parents | 04799355362d |
children | 2f30ce3fb85e |
line wrap: on
line diff
--- a/markup/input.py +++ b/markup/input.py @@ -68,6 +68,8 @@ parser = expat.ParserCreate('utf-8', '}') parser.buffer_text = True parser.returns_unicode = True + parser.ordered_attributes = True + parser.StartElementHandler = self._handle_start parser.EndElementHandler = self._handle_end parser.CharacterDataHandler = self._handle_data @@ -144,7 +146,7 @@ self.expat.CurrentColumnNumber) def _handle_start(self, tag, attrib): - self._enqueue(START, (QName(tag), Attributes(attrib.items()))) + self._enqueue(START, (QName(tag), Attributes(zip(*[iter(attrib)] * 2)))) def _handle_end(self, tag): self._enqueue(END, QName(tag))