77import string
88import sys
99
10+ from xml .sax .saxutils import quoteattr
11+
1012
1113bang_join = "!" .join
1214null_join = "" .join
@@ -215,7 +217,7 @@ def split_columns(nodes, columns=1):
215217DL_LEVEL_INDENT = " "
216218
217219def format_column (nodes ):
218- strings = ["<dl compact>" ]
220+ strings = ["<dl compact='compact' >" ]
219221 append = strings .append
220222 level = 0
221223 previous = []
@@ -227,7 +229,7 @@ def format_column(nodes):
227229 break
228230 count = i + 1
229231 if count > level :
230- append ("<dl compact>" * (count - level ) + "\n " )
232+ append ("<dl compact='compact' >" * (count - level ) + "\n " )
231233 level = count
232234 elif level > count :
233235 append ("\n " )
@@ -242,7 +244,7 @@ def format_column(nodes):
242244 extra = " (continued)"
243245 else :
244246 extra = ""
245- append ("\n <dt>%s%s\n <dd>\n %s<dl compact>"
247+ append ("\n <dt>%s%s\n <dd>\n %s<dl compact='compact' >"
246248 % (term , extra , level * DL_LEVEL_INDENT ))
247249 append ("\n %s<dt>%s%s</a>"
248250 % (level * DL_LEVEL_INDENT , node .links [0 ], node .text [- 1 ]))
@@ -271,7 +273,6 @@ def format_nodes(nodes, columns=1):
271273 append ("\n </tr></table>" )
272274 else :
273275 append (format_column (nodes ))
274- append ("\n <p>\n " )
275276 return null_join (strings )
276277
277278
@@ -282,8 +283,8 @@ def format_letter(letter):
282283 lettername = "_ (underscore)"
283284 else :
284285 lettername = letter .capitalize ()
285- return "\n <hr>\n <h2><a name= \" letter-%s \" >%s</a> </h2>\n \n " \
286- % (letter , lettername )
286+ return "\n <hr / >\n <h2 id=%s >%s</h2>\n \n " \
287+ % (quoteattr ( " letter-" + letter ) , lettername )
287288
288289
289290def format_html_letters (nodes , columns , group_symbol_nodes ):
@@ -294,7 +295,7 @@ def format_html_letters(nodes, columns, group_symbol_nodes):
294295 for letter , nodes in letter_groups :
295296 s = "<b><a href=\" #letter-%s\" >%s</a></b>" % (letter , letter )
296297 items .append (s )
297- s = ["<hr><center>\n %s</center>\n " % " |\n " .join (items )]
298+ s = ["<hr / ><center>\n %s</center>\n " % " |\n " .join (items )]
298299 for letter , nodes in letter_groups :
299300 s .append (format_letter (letter ))
300301 s .append (format_nodes (nodes , columns ))
0 commit comments