@@ -126,8 +126,12 @@ def GenshiAdapter(tree):
126
126
text = None
127
127
128
128
if type in ("StartTag" , "EmptyTag" ):
129
+ if token ["namespace" ]:
130
+ name = u"{%s}%s" % (token ["namespace" ], token ["name" ])
131
+ else :
132
+ name = token ["name" ]
129
133
yield (START ,
130
- (QName (token [ " name" ] ),
134
+ (QName (name ),
131
135
Attrs ([(QName (attr ),value ) for attr ,value in token ["data" ]])),
132
136
(None , - 1 , - 1 ))
133
137
if type == "EmptyTag" :
@@ -149,10 +153,10 @@ def GenshiAdapter(tree):
149
153
if text is not None :
150
154
yield TEXT , text , (None , - 1 , - 1 )
151
155
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")}
156
160
except ImportError :
157
161
pass
158
162
@@ -179,7 +183,16 @@ def convertTokens(tokens):
179
183
for token in concatenateCharacterTokens (tokens ):
180
184
type = token ["type" ]
181
185
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 ))
183
196
indent += 2
184
197
attrs = token ["data" ]
185
198
if attrs :
0 commit comments