6.4.5.5. Headings

Start python section to interscript/weavers/html.py[6 /22 ] Next Prev Last
   226: #line 251 "html_weaver.ipk"
   227:   def new_heading(self,level):
   228:     while level>len(self.hcount): self.hcount.append(0)
   229:     while level<len(self.hcount): del self.hcount[-1]
   230:     counter = self.hcount[level-1]+1
   231:     self.hcount[level-1] = counter
   232:     return counter
   233: 
   234:   def get_formatted_heading_number(self, sep):
   235:     hnumber = ''
   236:     for i in range(0,len(self.hcount)-1):
   237:       hnumber = hnumber + str(self.hcount[i])+sep
   238:     hnumber = hnumber + str(self.hcount[-1])
   239:     return hnumber
   240: 
   241: 
   242:   def head(self,level, text, atext='', anchor=''):
   243:     self._endmode()
   244:     myanchor = anchor
   245:     if myanchor == '': myanchor = atext
   246:     if myanchor == '':
   247:       myanchor = 'h'+str(self.acount)
   248:       self.acount = self.acount + 1
   249: 
   250:     self.new_heading(level)
   251:     hnumber = self.get_formatted_heading_number('.')+'. '
   252:     hprefix = ''
   253:     if self.keywords.has_key('heading_prefix'):
   254:       hprefix = self.keywords['heading_prefix']
   255:     ahref = '<A HREF=#'+anchor+'>'+hprefix+hnumber+str(text)+'</A>'
   256: 
   257:     html_level = level + self.heading_level_offset
   258:     if html_level > 6: html_level = 6
   259:     if anchor: atag = ' ID="'+anchor+'" TITLE="'+anchor+'"'
   260:     else: atag = ' ID="'+myanchor+'"'
   261:     self._writeline( '<H'+str(html_level)+atag+'>'+
   262:       hprefix+hnumber+str(text)+\
   263:       '</H'+str(html_level)+'>')
   264: 
   265:     counter = self.hcount[level-1]
   266:     self.toc.append((level,ahref))
   267: 
End python section to interscript/weavers/html.py[6]