shithub: freetype+ttf2subf

Download patch

ref: 38208a6e6b07c8d3e144632c33833e16023b410b
parent: 0f5616a801e9401bf2e7abab3c709ada557ea6cf
author: Werner Lemberg <[email protected]>
date: Thu Jan 11 04:27:49 EST 2001

* docs/docmaker.py: Minor improvements to reduce unwanted spaces
and empty lines in output.
* docs/docmaker.py: Improved script to generate table of contents
and index pages.  It also supports wildcards on non Unix systems.

* include/freetype/*.h, include/freetype/cache/*.h: Updated comments
to include section definitions/delimitations for the API Reference
generator.

* include/freetype/freetype.h: Moved declaration of
`FT_Generic_Finalizer' and the `FT_Generic' structure to...
* include/freetype/fttypes.h: here.

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,13 +1,22 @@
-2000-01-09  David Turner <[email protected]>
+2001-01-10  Werner Lemberg  <[email protected]>
 
-	* docs/docmaker.py: improved script to generate table of contents and
-	index pages. it also supports wildcards on non Unix systems
+	* docs/docmaker.py: Minor improvements to reduce unwanted spaces
+	and empty lines in output.
 
-	* include/freetype/*.h, include/freetype/cache/*.h: updated comments 
-	to include section definitions / delimitations for the API Reference
-	generator..
+2001-01-09  David Turner <[email protected]>
 
-2000-01-04  Werner Lemberg  <[email protected]>
+	* docs/docmaker.py: Improved script to generate table of contents
+	and index pages.  It also supports wildcards on non Unix systems.
+
+	* include/freetype/*.h, include/freetype/cache/*.h: Updated comments
+	to include section definitions/delimitations for the API Reference
+	generator.
+
+	* include/freetype/freetype.h: Moved declaration of
+	`FT_Generic_Finalizer' and the `FT_Generic' structure to...
+	* include/freetype/fttypes.h: here.
+
+2001-01-04  Werner Lemberg  <[email protected]>
 
 	* include/freetype/ttnameid.h: Updated Unicode code range comments.
 
--- a/docs/docmaker.py
+++ b/docs/docmaker.py
@@ -10,7 +10,7 @@
 
 import fileinput, sys, string, glob
 
-html_header = """
+html_header = """\
 <html>
 <header>
 <title>FreeType 2 API Reference</title>
@@ -21,54 +21,39 @@
   LI { text-align=justify }
 </style>
 </header>
-<body text="#000000"
-      bgcolor="#FFFFFF"
-      link="#0000EF"
-      vlink="#51188E"
-      alink="#FF0000">
+<body text=#000000
+      bgcolor=#FFFFFF
+      link=#0000EF
+      vlink=#51188E
+      alink=#FF0000>
 <center><h1>FreeType 2 API Reference</h1></center>
 """
 
-html_footer = """
+html_footer = """\
 </body>
-</html>
-"""
+</html>"""
 
-section_title_header = """
-<center><h1>
-"""
+section_title_header = "<center><h1>"
+section_title_footer = "</h1></center>"
 
-section_title_footer = """
-</h1></center>
-"""
+code_header = "<font color=blue><pre>"
+code_footer = "</pre></font>"
 
-
-code_header = """
-<font color=blue><pre>
-"""
-
-code_footer = """
-</pre></font>
-"""
-
 para_header = "<p>"
 para_footer = "</p>"
 
-block_header = """<center><hr width="750"><table width="750"><tr><td>"""
+block_header = "<center><hr width=75%><table width=75%><tr><td>"
 block_footer = "</td></tr></table></center>"
 
-description_header = """<center><table width="650"><tr><td>"""
-description_footer = """</td></tr></table></center><br>"""
+description_header = "<center><table width=65%><tr><td>"
+description_footer = "</td></tr></table></center><br>"
 
-marker_header = """<center><table width="650" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>"""
+marker_header = "<center><table width=65% cellpadding=5><tr bgcolor=#EEEEFF><td><em><b>"
 marker_inter  = "</b></em></td></tr><tr><td>"
 marker_footer = "</td></tr></table></center>"
 
-source_header = """<center><table width="650"><tr bgcolor="#D6E8FF" width="100%"><td><pre>
-"""
-source_footer = """</pre></table></center>
-<br>
-"""
+source_header = "<center><table width=65%><tr bgcolor=#D6E8FF width=100%><td><pre>"
+source_footer = "</pre></table></center><br>"
 
 
 current_section = None
@@ -206,12 +191,16 @@
         while l > 0 and string.strip( self.lines[l - 1] ) == "":
             l = l - 1
 
-        print code_header
+        # the code footer should be directly appended to the last code
+        # line to avoid an additional blank line
+        #
+        sys.stdout.write( code_header )
         for line in self.lines[0 : l]:
-            print line
-        print code_footer
+            sys.stdout.write( '\n' + line )
+        sys.stdout.write( code_footer )
 
 
+
 #############################################################################
 #
 # The DocParagraph is used to store text paragraphs.
@@ -219,7 +208,6 @@
 #
 # The paragraph is filled line by line by the parser.
 #
-
 class DocParagraph:
 
     def __init__( self ):
@@ -229,13 +217,13 @@
     def add( self, line ):
         # Get rid of unwanted spaces in the paragraph.
         #
-        # The following line is the same as
+        # The following two lines are the same as
         #
         #   self.words.extend( string.split( line ) )
         #
         # but older Python versions don't have the `extend' attribute.
         #
-        last = len(self.words)
+        last = len( self.words )
         self.words[last:last] = string.split( line )
 
 
@@ -287,6 +275,7 @@
         print para_footer
 
 
+
 #############################################################################
 #
 # DocContent is used to store the content of a given marker.
@@ -320,8 +309,6 @@
 # The DocContent object is entirely built at creation time; you must
 # pass a list of input text lines in the "lines_list" parameter.
 #
-#
-
 class DocContent:
 
     def __init__( self, lines_list ):
@@ -390,7 +377,7 @@
                     paragraph.add( line )
 
             else:
-                # we're in code mode...
+                # we are in code mode...
                 #
                 line = aline
 
@@ -454,7 +441,7 @@
                 element.dump()
 
             if field:
-                print "</field>        "
+                print "</field>"
 
 
     def dump_html( self ):
@@ -475,7 +462,7 @@
 
             else:
                 if not in_table:
-                    print '<table cellpadding=4><tr valign=top><td>'
+                    print "<table cellpadding=4><tr valign=top><td>"
                     in_table = 1
                 else:
                     print "</td></tr><tr valign=top><td>"
@@ -514,7 +501,7 @@
 
 
 
-######################################################################################
+#############################################################################
 #
 #
 # The DocBlock class is used to store a given comment block. It contains
@@ -527,9 +514,9 @@
 #   "self.source" is simply a list of text lines taken from the
 #   uncommented source itself.
 #
-#   Finally, "self.name" is a simple identifier used to
-#   uniquely identify the block. it is taken from the first word of the first
-#   paragraphe of the first marker of a given block, i.e:
+#   Finally, "self.name" is a simple identifier used to uniquely identify
+#   the block. It is taken from the first word of the first
+#   paragraph of the first marker of a given block, i.e:
 #
 #      <Type> Goo
 #      <Description> Bla bla bla
@@ -539,14 +526,14 @@
 class DocBlock:
 
     def __init__( self, block_line_list = [], source_line_list = [] ):
-        self.items      = []             # current ( marker, contents ) list
-        self.section    = None           # section this block belongs to
-        
-        marker      = None               # current marker
-        content     = []                 # current content lines list
-        alphanum    = string.letters + string.digits + "_"
-        self.name   = None
+        self.items   = []                # current ( marker, contents ) list
+        self.section = None              # section this block belongs to
 
+        marker       = None              # current marker
+        content      = []                # current content lines list
+        alphanum     = string.letters + string.digits + "_"
+        self.name    = None
+
         for line in block_line_list:
             line2  = string.lstrip( line )
             l      = len( line2 )
@@ -613,7 +600,7 @@
             content = DocContent( lines )
             self.items.append( ( string.lower( marker ), content ) )
 
-    
+
     def find_content( self, marker ):
         for item in self.items:
             if ( item[0] == marker ):
@@ -629,8 +616,8 @@
 
 
     def dump_html( self ):
-        types = [ 'type', 'struct', 'functype', 'function', 'constant',
-                  'enum', 'macro' ]
+        types      = [ 'type', 'struct', 'functype', 'function',
+                       'constant', 'enum', 'macro' ]
 
         parameters = [ 'input', 'inout', 'output', 'return' ]
 
@@ -637,15 +624,16 @@
         if not self.items:
             return
 
-        # place html anchor when needed
-        if self.name:
-            print '<a name="'+self.name+'">'
-
         # start of a block
         #
         print block_header
 
-        print "<h4>" + self.name + "</h4>"
+        # place html anchor if needed
+        #
+        if self.name:
+            print '<a name="' + self.name + '">'
+            print "<h4>" + self.name + "</h4>"
+            print "</a>"
 
         # print source code
         #
@@ -657,12 +645,13 @@
         while l >= 0 and string.strip( lines[l] ) == "":
             l = l - 1
         print source_header
+        print ""
         for line in lines[0 : l + 1]:
-            print  line
+            print line
         print source_footer
 
         in_table = 0
-        
+
         # dump each (marker,content) element
         #
         for element in self.items:
@@ -675,19 +664,19 @@
                 print description_footer
 
             elif not ( marker in types ):
-
-                print marker_header
-                print marker
-                print marker_inter
+                sys.stdout.write( marker_header )
+                sys.stdout.write( marker )
+                sys.stdout.write( marker_inter + '\n' )
                 content.dump_html()
                 print marker_footer
-                
+
         print ""
 
         print block_footer
 
 
-######################################################################################
+
+#############################################################################
 #
 # The DocSection class is used to store a given documentation section.
 #
@@ -725,7 +714,7 @@
         # section
         #
         if self.elements.has_key( block.name ):
-            sys.stderr.write( "ERROR - duplicate element definition for " + 
+            sys.stderr.write( "ERROR - duplicate element definition for " +
                               "'" + block.name + "' in section '" +
                               section.name + "'" )
             sys.quit()
@@ -767,9 +756,9 @@
         self.sections        = {}
         self.list            = []
         self.current_section = None
-        self.index           = []    # sorted list of blocks that are not sections
+        self.index           = []    # sorted list of blocks that
+                                     # are not sections
 
-
     def append_section( self, block ):
         name     = string.lower( block.name )
         abstract = block.find_content( "abstract" )
@@ -776,7 +765,7 @@
 
         if self.sections.has_key( name ):
             # There is already a section with this name in our
-            # list. We'll try to complete it.
+            # list. We will try to complete it.
             #
             section = self.sections[name]
             if section.abstract:
@@ -789,7 +778,7 @@
                                   " for '" + name + "'" )
                     sys.quit()
             else:
-                # The old section didn't contain an abstract; we're
+                # The old section didn't contain an abstract; we are
                 # now going to replace it.
                 #
                 section.abstract    = abstract
@@ -802,7 +791,7 @@
             section = DocSection( block )
             self.sections[name] = section
             self.list.append( section )
-            
+
         self.current_section = section
 
 
@@ -822,6 +811,7 @@
     def prepare_files( self, file_prefix = None ):
         # prepare the section list, by computing section filenames
         # and the index
+        #
         if file_prefix:
             prefix = file_prefix + "-"
         else:
@@ -828,6 +818,7 @@
             prefix = ""
 
         # compute section names
+        #
         for section in self.sections.values():
             title_content     = section.block.find_content( "title" )
             if title_content:
@@ -835,7 +826,8 @@
             else:
                 section.title = "UNKNOWN_SECTION_TITLE!"
 
-        # compute section filenames        
+        # compute section filenames
+        #
         for section in self.sections.values():
             section.filename = prefix + section.name + ".html"
 
@@ -843,9 +835,10 @@
         self.index_filename = prefix + "index.html"
 
         # compute the sorted block list for the index
+        #
         self.index.sort( block_lexicographical_compare )
-        
 
+
     def dump_html_toc( self ):
         # dump an html table of contents
         #
@@ -852,7 +845,7 @@
         old_stdout = sys.stdout
         new_file   = open( self.toc_filename, "w" )
         sys.stdout = new_file
-        
+
         print html_header
 
         print "<center><h1>Table of Contents</h1></center>"
@@ -861,9 +854,9 @@
         for section in self.list:
             if section.abstract:
                 print "<tr valign=top><td>"
-                print '<a href="' + section.filename + '">'
-                print section.title
-                print "</a></td><td>"
+                sys.stdout.write( '<a href="' + section.filename + '">' )
+                sys.stdout.write( section.title )
+                sys.stdout.write( "</a></td><td>" + '\n' )
                 section.abstract.dump_html()
                 print "</td></tr>"
 
@@ -878,7 +871,6 @@
         old_stdout = sys.stdout
 
         for section in self.sections.values():
-            
             if section.filename:
                 new_file   = open( section.filename, "w" )
                 sys.stdout = new_file
@@ -889,7 +881,6 @@
 
 
     def dump_html_index( self ):
-        
         old_stdout = sys.stdout
         new_file   = open( self.index_filename, "w" )
         sys.stdout = new_file
@@ -899,36 +890,32 @@
         line        = 0
 
         print html_header
-
         print "<center><h1>General Index</h1></center>"
-
         print "<center><table cellpadding=5><tr valign=top><td>"
 
         for block in self.index:
+            sys.stdout.write( '<a href="' + block.section.filename +
+                              '#' + block.name + '">' )
+            sys.stdout.write( block.name )
+            sys.stdout.write( "</a><br>" + '\n' )
 
-            print '<a href="'+block.section.filename+'#'+block.name+'">'
-            print block.name
-            print "</a><br>"
-
-            if line*num_columns >= total:
+            if line * num_columns >= total:
                 print "</td><td>"
                 line = 0
             else:
-                line = line+1
+                line = line + 1
 
         print "</tr></table></center>"
-
         print html_footer
-        
+
         sys.stdout = old_stdout
-        
 
+
 # Filter a given list of DocBlocks. Returns a new list
 # of DocBlock objects that only contains element whose
 # "type" (i.e. first marker) is in the "types" parameter.
 #
 def filter_blocks_by_type( block_list, types ):
-
     new_list = []
     for block in block_list:
         if block.items:
@@ -964,7 +951,6 @@
         return 1
 
 
-
 # dump a list block as a single HTML page
 #
 def dump_html_1( block_list ):
@@ -976,18 +962,16 @@
     print html_footer
 
 
-
-
 def make_block_list_inner():
     """parse a file and extract comments blocks from it"""
 
     file_list = []
     sys.stderr.write( repr( sys.argv[1:] ) + '\n' )
-    
+
     for pathname in sys.argv[1:]:
         newpath = glob.glob( pathname )
-        sys.stderr.write ( repr(newpath) + '\n' )
-        last = len(file_list)
+        sys.stderr.write( repr(newpath) + '\n' )
+        last = len( file_list )
         file_list[last:last] = newpath
 
     if len( file_list ) == 0:
@@ -1006,9 +990,9 @@
     #  4 - wait for beginning of source (or comment ??)
     #  5 - process source
     #
-    comment     = []
-    source      = []
-    state       = 0
+    comment = []
+    source  = []
+    state   = 0
 
     for line in fileinput.input( file_list ):
         l = len( line )
@@ -1144,7 +1128,6 @@
 # create a list of DocBlock elements
 #
 def make_block_list():
-    
     source_block_list = make_block_list_inner()
     list              = []
 
@@ -1155,7 +1138,6 @@
     return list
 
 
-
 # This function is only used for debugging
 #
 def dump_block_list( list ):
@@ -1191,8 +1173,8 @@
     section_list.dump_html_toc()
     section_list.dump_html_sections()
     section_list.dump_html_index()
-    
-    # list2 = filter_blocks( list, ['type','macro','enum','constant', 'functype'] )
+
+    # list2 = filter_blocks( list, ['type','macro','enum','constant','functype'] )
     # list2 = list
     # list2.sort( block_lexicographical_compare )
 
@@ -1203,6 +1185,7 @@
 
 
 # If called from the command line
+#
 if __name__ == '__main__':
     main( sys.argv )
 
--- a/include/freetype/cache/ftcimage.h
+++ b/include/freetype/cache/ftcimage.h
@@ -35,9 +35,13 @@
 FT_BEGIN_HEADER
 
 
-  /***
-   * <Section> cache_subsystem
-   */
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Section>                                                             */
+  /*    cache_subsystem                                                    */
+  /*                                                                       */
+  /*************************************************************************/
+
    
   /*************************************************************************/
   /*************************************************************************/
@@ -163,7 +167,9 @@
                                                  FT_UInt          gindex,
                                                  FT_Glyph        *aglyph );
 
+
   /* */
+
 
 FT_END_HEADER
 
--- a/include/freetype/cache/ftcmanag.h
+++ b/include/freetype/cache/ftcmanag.h
@@ -70,10 +70,15 @@
 
 FT_BEGIN_HEADER
 
-  /***
-   * <Section> cache_subsystem
-   */
 
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Section>                                                             */
+  /*    cache_subsystem                                                    */
+  /*                                                                       */
+  /*************************************************************************/
+
+
 #define FTC_MAX_FACES_DEFAULT  2
 #define FTC_MAX_SIZES_DEFAULT  4
 #define FTC_MAX_BYTES_DEFAULT  200000  /* 200kByte by default! */
@@ -362,6 +367,7 @@
     FT_Pointer            cache_data;   /* passed to cache node methods */
 
   } FTC_CacheRec;
+
 
   /* */
 
--- a/include/freetype/cache/ftcsbits.h
+++ b/include/freetype/cache/ftcsbits.h
@@ -26,63 +26,76 @@
 #include FT_CACHE_IMAGE_H
 
 
-
 FT_BEGIN_HEADER
 
-  /***
-   * <Section> cache_subsystem
-   */
 
- /***********************************************************************
-  *
-  * <Type> FTC_SBit
-  *
-  * <Description>
-  *    handle to a small bitmap descriptor. see the FTC_SBitRec
-  *    structure for details..
-  */
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Section>                                                             */
+  /*    cache_subsystem                                                    */
+  /*                                                                       */
+  /*************************************************************************/
+
+
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Type>                                                                */
+  /*    FTC_SBit                                                           */
+  /*                                                                       */
+  /* <Description>                                                         */
+  /*    A handle to a small bitmap descriptor.  See the FTC_SBitRec        */
+  /*    structure for details.                                             */
+  /*                                                                       */
   typedef struct FTC_SBitRec_*  FTC_SBit;
 
- /***********************************************************************
-  *
-  * <Type> FTC_SBit_Cache
-  *
-  * <Description>
-  *    handle to a small bitmap cache. These are special cache objects
-  *    used to store small glyph bitmaps (and anti-aliased pixmaps) in
-  *    a much more efficient way than the traditional glyph image cache
-  *    implemented by FTC_Image_Cache
-  */
+
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Type>                                                                */
+  /*    FTC_SBit_Cache                                                     */
+  /*                                                                       */
+  /* <Description>                                                         */
+  /*    A handle to a small bitmap cache.  These are special cache objects */
+  /*    used to store small glyph bitmaps (and anti-aliased pixmaps) in a  */
+  /*    much more efficient way than the traditional glyph image cache     */
+  /*    implemented by FTC_Image_Cache.                                    */
+  /*                                                                       */
   typedef struct FTC_SBit_CacheRec_*  FTC_SBit_Cache;
 
- /***********************************************************************
-  *
-  * <Struct> FTC_SBitRec
-  *
-  * <Description>
-  *    a very compact structure used to describe a small glyph bitmap
-  *
-  * <Fields>
-  *    width    :: bitmap width in pixels
-  *    height   :: bitmap height in pixels
-  *
-  *    left     :: horizontal distance from pen position to left bitmap
-  *                border (a.k.a. "left side bearing", or "lsb")
-  *
-  *    top      :: vertical distance from pen position (on the baseline)
-  *                to the upper bitmap border (a.k.a. "top side bearing")
-  *                the distance is positive for upwards Y coordinates.
-  *
-  *    format   :: format of glyph bitmap (mono or gray)
-  *
-  *    pitch    :: number of bytes per bitmap lines. may be positive or
-  *                negative
-  *
-  *    xadvance :: horizontal advance width in pixels
-  *    yadvance :: vertical advance height in pixels
-  *
-  *    buffer   :: pointer to bitmap pixels
-  */
+
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Struct>                                                              */
+  /*    FTC_SBitRec                                                        */
+  /*                                                                       */
+  /* <Description>                                                         */
+  /*    A very compact structure used to describe a small glyph bitmap.    */
+  /*                                                                       */
+  /* <Fields>                                                              */
+  /*    width    :: The bitmap width in pixels.                            */
+  /*                                                                       */
+  /*    height   :: The bitmap height in pixels.                           */
+  /*                                                                       */
+  /*    left     :: The horizontal distance from the pen position to the   */
+  /*                left bitmap border (a.k.a. `left side bearing', or     */
+  /*                `lsb').                                                */
+  /*                                                                       */
+  /*    top      :: The vertical distance from the pen position (on the    */
+  /*                baseline) to the upper bitmap border (a.k.a. `top side */
+  /*                bearing').  The distance is positive for upwards       */
+  /*                Y coordinates.                                         */
+  /*                                                                       */
+  /*    format   :: The format of the glyph bitmap (monochrome or gray).   */
+  /*                                                                       */
+  /*    pitch    :: The number of bytes per bitmap line.  May be positive  */
+  /*                or negative.                                           */
+  /*                                                                       */
+  /*    xadvance :: The horizontal advance width in pixels.                */
+  /*                                                                       */
+  /*    yadvance :: The vertical advance height in pixels.                 */
+  /*                                                                       */
+  /*    buffer   :: A pointer to the bitmap pixels.                        */
+  /*                                                                       */
   typedef struct  FTC_SBitRec_
   {
     FT_Byte   width;
@@ -100,58 +113,63 @@
   } FTC_SBitRec;
 
 
- /*************************************************************************
-  *
-  * <Section> FTC_SBit_Cache_New
-  *
-  * <Description>
-  *    Create a new cache to store small glyph bitmaps
-  *
-  * <Input>
-  *    manager :: handle to source cache manager
-  *
-  * <Output>
-  *    acache  :: handle to new sbit cache. NULL in case of error
-  *
-  * <Return>
-  *    error code. 0 means success
-  */
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Function>                                                            */
+  /*    FTC_SBit_Cache_New                                                 */
+  /*                                                                       */
+  /* <Description>                                                         */
+  /*    Creates a new cache to store small glyph bitmaps.                  */
+  /*                                                                       */
+  /* <Input>                                                               */
+  /*    manager :: A handle to the source cache manager.                   */
+  /*                                                                       */
+  /* <Output>                                                              */
+  /*    acache  :: A handle to the new sbit cache.  NULL in case of error. */
+  /*                                                                       */
+  /* <Return>                                                              */
+  /*    FreeType error code.  0 means success.                             */
+  /*                                                                       */
   FT_EXPORT( FT_Error )  FTC_SBit_Cache_New( FTC_Manager      manager,
                                              FTC_SBit_Cache  *acache );
 
- /*************************************************************************
-  *
-  * <Section> FTC_SBit_Cache_Lookup
-  *
-  * <Description>
-  *    Lookup a given small glyph bitmap in a given sbit cache
-  *
-  * <Input>
-  *    cache  :: handle to source sbit cache
-  *    desc   :: pointer to glyph image descriptor
-  *    gindex :: glyph index
-  *
-  * <Output>
-  *    sbit   :: handle to a small bitmap descriptor
-  *
-  * <Return>
-  *    error code. 0 means success
-  *
-  * <Note>
-  *    the small bitmap descriptor, and its bit buffer are owned by the
-  *    cache and should never be freed by the application. They might
-  *    as well disappear from memory on the next cache lookup, so don't
-  *    treat them like persistent data..
-  *
-  *    the descriptor's "buffer" field is set to 0 to indicate a missing
-  *    glyph bitmap.
-  */
+
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Function>                                                            */
+  /*    FTC_SBit_Cache_Lookup                                              */
+  /*                                                                       */
+  /* <Description>                                                         */
+  /*    Looks up a given small glyph bitmap in a given sbit cache.         */
+  /*                                                                       */
+  /* <Input>                                                               */
+  /*    cache  :: A handle to the source sbit cache.                       */
+  /*    desc   :: A pointer to the glyph image descriptor.                 */
+  /*    gindex :: The glyph index.                                         */
+  /*                                                                       */
+  /* <Output>                                                              */
+  /*    sbit   :: A handle to a small bitmap descriptor.                   */
+  /*                                                                       */
+  /* <Return>                                                              */
+  /*    FreeType error code.  0 means success.                             */
+  /*                                                                       */
+  /* <Note>                                                                */
+  /*    The small bitmap descriptor and its bit buffer are owned by the    */
+  /*    cache and should never be freed by the application.  They might    */
+  /*    as well disappear from memory on the next cache lookup, so don't   */
+  /*    treat them as persistent data.                                     */
+  /*                                                                       */
+  /*    The descriptor's `buffer' field is set to 0 to indicate a missing  */
+  /*    glyph bitmap.                                                      */
+  /*                                                                       */
   FT_EXPORT( FT_Error )  FTC_SBit_Cache_Lookup( FTC_SBit_Cache   cache,
                                                 FTC_Image_Desc*  desc,
                                                 FT_UInt          gindex,
                                                 FTC_SBit        *sbit );
 
+
   /* */
+
 
 FT_END_HEADER
 
--- a/include/freetype/freetype.h
+++ b/include/freetype/freetype.h
@@ -55,21 +55,26 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  /*************************************************************************
-   *
-   * <Section> base_interface
-   *
-   * <Title> Base Interface
-   *
-   * <Abstract>
-   *    The FreeType 2 base font interface
-   *
-   * <Description>
-   *    This sections details the public high-level API of FreeType 2
-   */
 
   /*************************************************************************/
   /*                                                                       */
+  /* <Section>                                                             */
+  /*    base_interface                                                     */
+  /*                                                                       */
+  /* <Title>                                                               */
+  /*    Base Interface                                                     */
+  /*                                                                       */
+  /* <Abstract>                                                            */
+  /*    The FreeType 2 base font interface.                                */
+  /*                                                                       */
+  /* <Description>                                                         */
+  /*    This section describes the public high-level API of FreeType 2.    */
+  /*                                                                       */
+  /*************************************************************************/
+
+
+  /*************************************************************************/
+  /*                                                                       */
   /* <Struct>                                                              */
   /*    FT_Glyph_Metrics                                                   */
   /*                                                                       */
@@ -2242,6 +2247,7 @@
   /*                                                                       */
   FT_EXPORT( void )  FT_Vector_Transform( FT_Vector*  vec,
                                           FT_Matrix*  matrix );
+
 
   /* */
 
--- a/include/freetype/ftbbox.h
+++ b/include/freetype/ftbbox.h
@@ -38,9 +38,13 @@
 FT_BEGIN_HEADER
 
 
-  /********************************
-   * <Section> outline_processing
-   */
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Section>                                                             */
+  /*    outline_processing                                                 */
+  /*                                                                       */
+  /*************************************************************************/
+
 
   /*************************************************************************/
   /*                                                                       */
--- a/include/freetype/ftcache.h
+++ b/include/freetype/ftcache.h
@@ -50,23 +50,28 @@
 #define FT_CACHE_INTERNAL_GLYPH_H  FT2_PUBLIC_FILE(cache/ftcglyph.h)
 #define FT_CACHE_INTERNAL_CHUNK_H  FT2_PUBLIC_FILE(cache/ftcchunk.h)
 
-  /**************************************************************************
-   *
-   * <Section> cache_subsystem
-   *
-   * <Title> Cache Sub-System
-   *
-   * <Abstract>
-   *    How to cache face, size and glyph data with FreeType 2
-   *
-   * <Description>
-   *   This section details the FreeType 2 cache sub-system which is still
-   *   in beta.
-   */
 
   /*************************************************************************/
+  /*                                                                       */
+  /* <Section>                                                             */
+  /*    cache_subsystem                                                    */
+  /*                                                                       */
+  /* <Title>                                                               */
+  /*    Cache Sub-System                                                   */
+  /*                                                                       */
+  /* <Abstract>                                                            */
+  /*    How to cache face, size, and glyph data with FreeType 2.           */
+  /*                                                                       */
+  /* <Description>                                                         */
+  /*   This section describes the FreeType 2 cache sub-system which is     */
+  /*   stile in beta.                                                      */
+  /*                                                                       */
   /*************************************************************************/
+
+
   /*************************************************************************/
+  /*************************************************************************/
+  /*************************************************************************/
   /*****                                                               *****/
   /*****                    BASIC TYPE DEFINITIONS                     *****/
   /*****                                                               *****/
@@ -343,6 +348,9 @@
                            FTC_Manager       manager,
                            FTC_Cache_Class*  clazz,
                            FTC_Cache        *acache );
+
+
+  /* */
 
 
 FT_END_HEADER
--- a/include/freetype/ftglyph.h
+++ b/include/freetype/ftglyph.h
@@ -39,21 +39,26 @@
 
 FT_BEGIN_HEADER
 
+
   /*************************************************************************/
   /*                                                                       */
-  /* <Section> glyph_management                                            */
+  /* <Section>                                                             */
+  /*    glyph_management                                                   */
   /*                                                                       */
-  /* <Title> Glyph Management                                              */
+  /* <Title>                                                               */
+  /*    Glyph Management                                                   */
   /*                                                                       */
   /* <Abstract>                                                            */
-  /*    Generic interface to manage individual glyph data                  */
+  /*    Generic interface to manage individual glyph data.                 */
   /*                                                                       */
   /* <Description>                                                         */
   /*    This section contains definitions used to manage glyph data        */
-  /*    through generic FT_Glyph objects. Each one of them can contain     */
-  /*    a bitmap, a vector outline, or even images in other formats.       */
+  /*    through generic FT_Glyph objects.  Each of them can contain a      */
+  /*    bitmap, a vector outline, or even images in other formats.         */
   /*                                                                       */
+  /*************************************************************************/
 
+
   /* forward declaration to a private type */
   typedef struct FT_Glyph_Class_  FT_Glyph_Class;
 
@@ -296,7 +301,6 @@
   /*                                                                       */
   /*    The default value for `bbox_mode' is `ft_glyph_bbox_pixels'.       */
   /*                                                                       */
-
   enum
   {
     ft_glyph_bbox_unscaled  = 0, /* return unscaled font units           */
@@ -405,10 +409,14 @@
 
   /* other helpful functions */
 
-  /*****
-   * <Section> base_interface
-   */
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Section>                                                             */
+  /*    base_interface                                                     */
+  /*                                                                       */
+  /*************************************************************************/
 
+
   /*************************************************************************/
   /*                                                                       */
   /* <Function>                                                            */
@@ -446,6 +454,9 @@
   /*    FreeType error code.  0 means success.                             */
   /*                                                                       */
   FT_EXPORT( FT_Error )  FT_Matrix_Invert( FT_Matrix*  matrix );
+
+
+  /* */
 
 
 FT_END_HEADER
--- a/include/freetype/ftimage.h
+++ b/include/freetype/ftimage.h
@@ -33,14 +33,17 @@
 
 FT_BEGIN_HEADER
 
-  /***********************************************************************
-   *
-   * <Section> basic_types
-   *
-   */
 
   /*************************************************************************/
   /*                                                                       */
+  /* <Section>                                                             */
+  /*    basic_types                                                        */
+  /*                                                                       */
+  /*************************************************************************/
+
+
+  /*************************************************************************/
+  /*                                                                       */
   /* <Type>                                                                */
   /*    FT_Pos                                                             */
   /*                                                                       */
@@ -231,12 +234,14 @@
   } FT_Bitmap;
 
 
-  /***********************************************************************
-   *
-   * <Section> outline_processing
-   *
-   */
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Section>                                                             */
+  /*    outline_processing                                                 */
+  /*                                                                       */
+  /*************************************************************************/
 
+
   /*************************************************************************/
   /*                                                                       */
   /* <Struct>                                                              */
@@ -528,12 +533,14 @@
   } FT_Outline_Funcs;
 
 
-  /***********************************************************************
-   *
-   * <Section> Basic_Types
-   *
-   */
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Section>                                                             */
+  /*    basic_types                                                        */
+  /*                                                                       */
+  /*************************************************************************/
 
+
   /*************************************************************************/
   /*                                                                       */
   /* <Macro>                                                               */
@@ -612,21 +619,26 @@
   /*                                                                       */
   /*************************************************************************/
 
-  /************************************************************************
-   *
-   *  <Section> Raster
-   *
-   *  <Title> Scanline converter
-   *
-   *  <Abstract>
-   *     How vectorial outlines are converted into bitmaps and pixmaps
-   *
-   *  <Description>
-   *     This section contains technical definitions
-   */
 
   /*************************************************************************/
   /*                                                                       */
+  /* <Section>                                                             */
+  /*    Raster                                                             */
+  /*                                                                       */
+  /* <Title>                                                               */
+  /*    Scanline converter                                                 */
+  /*                                                                       */
+  /* <Abstract>                                                            */
+  /*    How vectorial outlines are converted into bitmaps and pixmaps.     */
+  /*                                                                       */
+  /* <Description>                                                         */
+  /*    This section contains technical definitions.                       */
+  /*                                                                       */
+  /*************************************************************************/
+
+
+  /*************************************************************************/
+  /*                                                                       */
   /* <Type>                                                                */
   /*    FT_Raster                                                          */
   /*                                                                       */
@@ -692,9 +704,9 @@
   /*                                                                       */
   typedef struct  FT_Span_
   {
-    short          x;
-    unsigned short len;
-    unsigned char  coverage;
+    short           x;
+    unsigned short  len;
+    unsigned char   coverage;
 
   } FT_Span;
 
@@ -804,28 +816,33 @@
   /* <Fields>                                                              */
   /*    ft_raster_flag_default :: This value is 0.                         */
   /*                                                                       */
-  /*    ft_raster_flag_aa      ::                                          */
-  /*      this flag is set to indicate that a anti-aliased glyph image     */
-  /*      should be generated. Otherwise, it will be monochrome (1-bit)    */
+  /*    ft_raster_flag_aa      :: This flag is set to indicate that an     */
+  /*                              anti-aliased glyph image should be       */
+  /*                              generated.  Otherwise, it will be        */
+  /*                              monochrome (1-bit)                       */
   /*                                                                       */
-  /*    ft_raster_flag_direct  ::                                          */
-  /*      this flag is set to indicate direct rendering. In this mode,     */
-  /*      client applications must provide their own span callback.        */
-  /*      this let them direct drawing or composition over an existing     */
-  /*      bitmap. If this bit is not set, the target pixmap's buffer       */
-  /*      _must_ be zeroed before rendering.                               */
+  /*    ft_raster_flag_direct  :: This flag is set to indicate direct      */
+  /*                              rendering.  In this mode, client         */
+  /*                              applications must provide their own span */
+  /*                              callback.  This lets them directly       */
+  /*                              draw or compose over an existing bitmap. */
+  /*                              If this bit is not set, the target       */
+  /*                              pixmap's buffer _must_ be zeroed before  */
+  /*                              rendering.                               */
   /*                                                                       */
-  /*      note that for now, direct rendering is only possible with        */
-  /*      anti-aliased glyphs only..                                       */
+  /*                              Note that for now, direct rendering is   */
+  /*                              only possible with anti-aliased glyphs.  */
   /*                                                                       */
-  /*    ft_raster_flag_clip    ::                                          */
-  /*      this flag is only used in direct rendering mode. When set,       */
-  /*      the output will be clipped to a box specified in the "clip_box"  */
-  /*      field of the FT_Raster_Params structure.                         */
+  /*    ft_raster_flag_clip    :: This flag is only used in direct         */
+  /*                              rendering mode.  If set, the output will */
+  /*                              be clipped to a box specified in the     */
+  /*                              "clip_box" field of the FT_Raster_Params */
+  /*                              structure.                               */
   /*                                                                       */
-  /*      note that by default, the glyph bitmap is clipped to the         */
-  /*      target pixmap, except in direct rendering mode where all         */
-  /*      spans are generated if no clipping box is set.                   */
+  /*                              Note that by default, the glyph bitmap   */
+  /*                              is clipped to the target pixmap, except  */
+  /*                              in direct rendering mode where all spans */
+  /*                              are generated if no clipping box is set. */
   /*                                                                       */
   typedef  enum
   {
@@ -1064,6 +1081,9 @@
     FT_Raster_Done_Func      raster_done;
 
   } FT_Raster_Funcs;
+
+
+  /* */
 
 
 FT_END_HEADER
--- a/include/freetype/ftlist.h
+++ b/include/freetype/ftlist.h
@@ -34,20 +34,24 @@
 
 FT_BEGIN_HEADER
 
-  /**************************************************************************
-   *
-   *  <Section> list_processing
-   *
-   *  <Title> List Processing
-   *
-   *  <Abstract>
-   *     simple management of lists
-   *
-   *  <Description>
-   *     This section contains various definitions related to list processing
-   *     using doubly-linked nodes.
-   *
-   */
+
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Section>                                                             */
+  /*    list_processing                                                    */
+  /*                                                                       */
+  /* <Title>                                                               */
+  /*    List Processing                                                    */
+  /*                                                                       */
+  /* <Abstract>                                                            */
+  /*    Simple management of lists.                                        */
+  /*                                                                       */
+  /* <Description>                                                         */
+  /*    This section contains various definitions related to list          */
+  /*    processing using doubly-linked nodes.                              */
+  /*                                                                       */
+  /*************************************************************************/
+
   
   /*************************************************************************/
   /*                                                                       */
@@ -227,7 +231,9 @@
                                        FT_Memory           memory,
                                        void*               user );
 
+
   /* */
+
   
 FT_END_HEADER
 
--- a/include/freetype/ftmac.h
+++ b/include/freetype/ftmac.h
@@ -34,22 +34,27 @@
 
 FT_BEGIN_HEADER
 
-  /*******************************************************************
-   *
-   * <Section> Mac_Specific
-   *
-   * <Title> Mac-Specific Interface
-   *
-   * <Abstract>
-   *    Only available on the Macintosh
-   *
-   * <Description>
-   *    The following definitions are only available when FreeType
-   *    is compiled on a Macintosh.
-   */
 
   /*************************************************************************/
   /*                                                                       */
+  /* <Section>                                                             */
+  /*    Mac_Specific                                                       */
+  /*                                                                       */
+  /* <Title>                                                               */
+  /*    Mac-Specific Interface                                             */
+  /*                                                                       */
+  /* <Abstract>                                                            */
+  /*    Only available on the Macintosh.                                   */
+  /*                                                                       */
+  /* <Description>                                                         */
+  /*    The following definitions are only available if FreeType is        */
+  /*    compiled on a Macintosh.                                           */
+  /*                                                                       */
+  /*************************************************************************/
+
+
+  /*************************************************************************/
+  /*                                                                       */
   /* <Function>                                                            */
   /*    FT_New_Face_From_FOND                                              */
   /*                                                                       */
@@ -78,7 +83,6 @@
   /*    {                                                                  */
   /*      fond = GetResource( 'FOND', fontName );                          */
   /*      error = FT_New_Face_From_FOND( library, fond, 0, &face );        */
-  /*                                                                       */
   /*    }                                                                  */
   /*                                                                       */
   FT_EXPORT( FT_Error )  FT_New_Face_From_FOND( FT_Library  library,
@@ -86,7 +90,9 @@
                                                 FT_Long     face_index,
                                                 FT_Face    *aface );
 
+
   /* */
+
 
 FT_END_HEADER
 
--- a/include/freetype/ftmm.h
+++ b/include/freetype/ftmm.h
@@ -26,23 +26,28 @@
 
 FT_BEGIN_HEADER
 
-  /**********************************************************************
-   *
-   *  <Section> Multiple_Masters
-   *
-   *  <Title> Multiple Masters
-   *
-   *  <Abstract>
-   *     How to manage multiple masters fonts
-   *
-   *  <Description>
-   *     The following types and functions are used to manage multiple
-   *     master fonts, i.e. choose specific design instances by setting
-   *     design axis coordinates.
-   */
 
   /*************************************************************************/
   /*                                                                       */
+  /* <Section>                                                             */
+  /*    multiple_masters                                                   */
+  /*                                                                       */
+  /* <Title>                                                               */
+  /*    Multiple Masters                                                   */
+  /*                                                                       */
+  /* <Abstract>                                                            */
+  /*    How to manage Multiple Masters fonts.                              */
+  /*                                                                       */
+  /* <Description>                                                         */
+  /*    The following types and functions are used to manage Multiple      */
+  /*    Master fonts, i.e. the selection of specific design instances by   */
+  /*    setting design axis coordinates.                                   */
+  /*                                                                       */
+  /*************************************************************************/
+
+
+  /*************************************************************************/
+  /*                                                                       */
   /* <Struct>                                                              */
   /*    FT_MM_Axis                                                         */
   /*                                                                       */
@@ -180,6 +185,9 @@
                            FT_Face    face,
                            FT_UInt    num_coords,
                            FT_Fixed*  coords );
+
+
+  /* */
 
 
 FT_END_HEADER
--- a/include/freetype/ftmodule.h
+++ b/include/freetype/ftmodule.h
@@ -26,19 +26,25 @@
 
 FT_BEGIN_HEADER
 
-  /**************************************************************************
-   *
-   * <Section> Module_Management
-   *
-   * <Title> Module Management
-   *
-   * <Abstract> How to add, upgrade and remove modules from FreeType
-   *
-   * <Description>
-   *    The definitions below are used to manage modules within FreeType.
-   *    Modules can be added, upgraded and removed at runtime.
-   */
 
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Section>                                                             */
+  /*    module_management                                                  */
+  /*                                                                       */
+  /* <Title>                                                               */
+  /*    Module Management                                                  */
+  /*                                                                       */
+  /* <Abstract>                                                            */
+  /*    How to add, upgrade, and remove modules from FreeType.             */
+  /*                                                                       */
+  /* <Description>                                                         */
+  /*    The definitions below are used to manage modules within FreeType.  */
+  /*    Modules can be added, upgraded, and removed at runtime.            */
+  /*                                                                       */
+  /*************************************************************************/
+
+
   /* module bit flags */
   typedef enum  FT_Module_Flags_
   {
@@ -276,6 +282,9 @@
   /*    library :: A handle to a new library object.                       */
   /*                                                                       */
   FT_EXPORT( void )  FT_Add_Default_Modules( FT_Library  library );
+
+
+  /* */
 
 
 FT_END_HEADER
--- a/include/freetype/ftnames.h
+++ b/include/freetype/ftnames.h
@@ -30,25 +30,30 @@
 FT_BEGIN_HEADER
 
 
-  /**************************************************************************
-   *
-   * <Section> SFNT_Names
-   *
-   * <Title> SFNT Names
-   *
-   * <Abstract> Access the names embedded in TrueType and OpenType files
-   *
-   * <Description>
-   *    The TrueType and OpenType specification allow the inclusion of
-   *    a special "names table" in font files. This table contains textual
-   *    (and internationalised) information regarding the font, like
-   *    family name, copyright, version, etc..
-   *
-   *    the definitions below are used to access them when available
-   *
-   *    note that this has nothing to do with "glyph names" !!
-   */
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Section>                                                             */
+  /*    sfnt_names                                                         */
+  /*                                                                       */
+  /* <Title>                                                               */
+  /*    SFNT Names                                                         */
+  /*                                                                       */
+  /* <Abstract>                                                            */
+  /*    Access the names embedded in TrueType and OpenType files.          */
+  /*                                                                       */
+  /* <Description>                                                         */
+  /*    The TrueType and OpenType specification allow the inclusion of     */
+  /*    a special `names table' in font files.  This table contains        */
+  /*    textual (and internationalized) information regarding the font,    */
+  /*    like family name, copyright, version, etc.                         */
+  /*                                                                       */
+  /*    The definitions below are used to access them if available.        */
+  /*                                                                       */
+  /*    Note that this has nothing to do with glyph names!                 */
+  /*                                                                       */
+  /*************************************************************************/
 
+
   /*************************************************************************/
   /*                                                                       */
   /* <Struct>                                                              */
@@ -137,7 +142,10 @@
   FT_EXPORT( FT_Error )  FT_Get_Sfnt_Name( FT_Face       face,
                                            FT_UInt       index,
                                            FT_SfntName  *aname );
+
+
   /* */
+
 
 FT_END_HEADER
 
--- a/include/freetype/ftoutln.h
+++ b/include/freetype/ftoutln.h
@@ -27,22 +27,26 @@
 
 FT_BEGIN_HEADER
 
+
   /*************************************************************************/
   /*                                                                       */
-  /* <Section> outline_processing                                          */
+  /* <Section>                                                             */
+  /*    outline_processing                                                 */
   /*                                                                       */
-  /* <Title> Outline Processing                                            */
+  /* <Title>                                                               */
+  /*    Outline Processing                                                 */
   /*                                                                       */
   /* <Abstract>                                                            */
-  /*    Functions to create, transform and render vectorial glyph images   */
+  /*    Functions to create, transform, and render vectorial glyph images. */
   /*                                                                       */
   /* <Description>                                                         */
-  /*    This sections contains routines used to create and destroy         */
-  /*    scalable glyph images known as "outlines". These can also be       */
-  /*    measured, transformed and converted into bitmaps, pixmaps and      */
+  /*    This section contains routines used to create and destroy scalable */
+  /*    glyph images known as `outlines'.  These can also be measured,     */
+  /*    transformed, and converted into bitmaps and pixmaps.               */
   /*                                                                       */
-  /*                                                                       */
+  /*************************************************************************/
 
+
   /*************************************************************************/
   /*                                                                       */
   /* <Function>                                                            */
@@ -329,6 +333,9 @@
   FT_EXPORT( FT_Error )  FT_Outline_Render( FT_Library         library,
                                             FT_Outline*        outline,
                                             FT_Raster_Params*  params );
+
+
+  /* */
 
 
 FT_END_HEADER
--- a/include/freetype/ftrender.h
+++ b/include/freetype/ftrender.h
@@ -27,10 +27,15 @@
 
 FT_BEGIN_HEADER
 
-  /****
-   * <Section> Module_Management
-   */
 
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Section>                                                             */
+  /*    module_management                                                  */
+  /*                                                                       */
+  /*************************************************************************/
+
+
   /* create a new glyph object */
   typedef FT_Error  (*FT_Glyph_Init_Func)     ( FT_Glyph      glyph,
                                                 FT_GlyphSlot  slot );
@@ -182,6 +187,7 @@
                                           FT_Renderer    renderer,
                                           FT_UInt        num_params,
                                           FT_Parameter*  parameters );
+
 
   /* */
 
--- a/include/freetype/ftsystem.h
+++ b/include/freetype/ftsystem.h
@@ -264,7 +264,9 @@
     unsigned char*   limit;
   };
 
+
   /* */
+
 
 FT_END_HEADER
 
--- a/include/freetype/fttypes.h
+++ b/include/freetype/fttypes.h
@@ -29,20 +29,25 @@
 
 FT_BEGIN_HEADER
 
+
   /*************************************************************************/
   /*                                                                       */
-  /* <Section> basic_types                                                 */
+  /* <Section>                                                             */
+  /*    basic_types                                                        */
   /*                                                                       */
-  /* <Title> Basic Data Types                                              */
+  /* <Title>                                                               */
+  /*    Basic Data Types                                                   */
   /*                                                                       */
   /* <Abstract>                                                            */
-  /*    The basic data types defined by the library                        */
+  /*    The basic data types defined by the library.                       */
   /*                                                                       */
   /* <Description>                                                         */
-  /*    This sections contains the basic data types defined by FreeType 2, */
-  /*    rangine from simple scalar types to font specific ones             */
+  /*    This section contains the basic data types defined by FreeType 2,  */
+  /*    ranging from simple scalar types to font specific ones.            */
   /*                                                                       */
+  /*************************************************************************/
 
+
   /*************************************************************************/
   /*                                                                       */
   /* <Type>                                                                */
@@ -341,7 +346,6 @@
   } FT_Generic;
 
 
-
   /*************************************************************************/
   /*                                                                       */
   /* <Macro>                                                               */
@@ -366,13 +370,17 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  /**************************************************************************
-   *
-   *  <Section> list_processing
-   */
 
   /*************************************************************************/
   /*                                                                       */
+  /* <Section>                                                             */
+  /*    list_processing                                                    */
+  /*                                                                       */
+  /*************************************************************************/
+
+
+  /*************************************************************************/
+  /*                                                                       */
   /* <Type>                                                                */
   /*    FT_ListNode                                                        */
   /*                                                                       */
@@ -439,6 +447,7 @@
     FT_ListNode  tail;
 
   } FT_ListRec;
+
 
   /* */
 
--- a/include/freetype/t1tables.h
+++ b/include/freetype/t1tables.h
@@ -28,18 +28,24 @@
 FT_BEGIN_HEADER
 
 
-  /********************************************************************
-   *
-   * <Section> Type1_Tables
-   *
-   * <Title> Type 1 Tables
-   *
-   * <Abstract> Type 1 (Postscript) specific font tables
-   *
-   * <Description>
-   *    This section ....
-   */
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Section>                                                             */
+  /*    type1_tables                                                       */
+  /*                                                                       */
+  /* <Title>                                                               */
+  /*    Type 1 Tables                                                      */
+  /*                                                                       */
+  /* <Abstract>                                                            */
+  /*    Type 1 (PostScript) specific font tables.                          */
+  /*                                                                       */
+  /* <Description>                                                         */
+  /*    This section contains the definition of Type 1-specific tables,    */
+  /*    including structures related to other PostScript font formats.     */
+  /*                                                                       */
+  /*************************************************************************/
    
+
   /* Note that we separate font data in T1_FontInfo and T1_Private */
   /* structures in order to support Multiple Master fonts.         */
 
@@ -244,6 +250,9 @@
     FT_ULong       data_offset;
 
   } CID_Info;
+
+
+  /* */
 
 
 FT_END_HEADER
--- a/include/freetype/tttables.h
+++ b/include/freetype/tttables.h
@@ -29,18 +29,22 @@
 
   /*************************************************************************/
   /*                                                                       */
-  /* <Section> TrueType_Tables                                             */
+  /* <Section>                                                             */
+  /*    truetype_tables                                                    */
   /*                                                                       */
-  /* <Title> TrueType Tables                                               */
+  /* <Title>                                                               */
+  /*    TrueType Tables                                                    */
   /*                                                                       */
   /* <Abstract>                                                            */
-  /*    TrueType-specific table types and functions                        */
+  /*    TrueType-specific table types and functions.                       */
   /*                                                                       */
   /* <Description>                                                         */
-  /*    This sections contains the definition of TrueType-specific tables  */
+  /*    This section contains the definition of TrueType-specific tables   */
   /*    as well as some routines used to access and process them.          */
   /*                                                                       */
+  /*************************************************************************/
 
+
   /*************************************************************************/
   /*                                                                       */
   /* <Struct>                                                              */
@@ -585,6 +589,7 @@
 
 
   /* */
+
 
 FT_END_HEADER