@@ -126,8 +126,12 @@ def GenshiAdapter(tree):
126126 text = None
127127
128128 if type in ("StartTag" , "EmptyTag" ):
129+ if token ["namespace" ]:
130+ name = u"{%s}%s" % (token ["namespace" ], token ["name" ])
131+ else :
132+ name = token ["name" ]
129133 yield (START ,
130- (QName (token [ " name" ] ),
134+ (QName (name ),
131135 Attrs ([(QName (attr ),value ) for attr ,value in token ["data" ]])),
132136 (None , - 1 , - 1 ))
133137 if type == "EmptyTag" :
@@ -149,10 +153,10 @@ def GenshiAdapter(tree):
149153 if text is not None :
150154 yield TEXT , text , (None , - 1 , - 1 )
151155
152- treeTypes ["genshi" ] = \
153- {"builder" : treebuilders .getTreeBuilder ("simpletree" ),
154- "adapter" : GenshiAdapter ,
155- "walker" : treewalkers .getTreeWalker ("genshi" )}
156+ # treeTypes["genshi"] = \
157+ # {"builder": treebuilders.getTreeBuilder("simpletree"),
158+ # "adapter": GenshiAdapter,
159+ # "walker": treewalkers.getTreeWalker("genshi")}
156160except ImportError :
157161 pass
158162
@@ -179,7 +183,16 @@ def convertTokens(tokens):
179183 for token in concatenateCharacterTokens (tokens ):
180184 type = token ["type" ]
181185 if type in ("StartTag" , "EmptyTag" ):
182- output .append (u"%s<%s>" % (" " * indent , token ["name" ]))
186+ if (token ["namespace" ] and
187+ token ["namespace" ] != constants .namespaces ["html" ]):
188+ if token ["namespace" ] in constants .prefixes :
189+ name = constants .prefixes [token ["namespace" ]]
190+ else :
191+ name = token ["namespace" ]
192+ name += u" " + token ["name" ]
193+ else :
194+ name = token ["name" ]
195+ output .append (u"%s<%s>" % (" " * indent , name ))
183196 indent += 2
184197 attrs = token ["data" ]
185198 if attrs :
0 commit comments