ref: a8199d608fcba1707a14da59b4bed91c77285dc1
parent: 66456162afdeef73a7a705f4e94c6ae32f71ebfd
author: David Turner <[email protected]>
date: Wed Aug 21 17:36:26 EDT 2002
* src/tools/docmaker/docmaker.py, src/tools/docmaker/utils.py, src/tools/docmaker/tohtml.py: updating the DocMaker tool
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,16 @@
+2002-08-21 David Turner <[email protected]>
+
+ * src/pshinter/pshalgo3.c, src/autohint/ahangles.c,
+ src/autohint/ahangles.h, src/autohint/ahglyph.c, src/autohint/ahhint.c,
+ src/autohint/ahtypes.h: the automatic and Postscript hinter now
+ automatically detect inflection points in glyph outlines and treats
+ them specially. This is very useful to prevent nasty effect like the
+ disappearing diagonals of "S" and "s" in many, many fonts..
+
+ * src/tools/docmaker/docmaker.py, src/tools/docmaker/utils.py,
+ src/tools/docmaker/tohtml.py: updating the DocMaker tool
+
+
2002-08-20 Werner Lemberg <[email protected]>
* src/truetype/ttgload.c (TT_Get_Metrics): Add guard for k = 0.
--- a/src/tools/docmaker/docmaker.py
+++ b/src/tools/docmaker/docmaker.py
@@ -13,10 +13,14 @@
# to speed things significantly
#
-from sources import *
-from content import *
-from tohtml import *
+from sources import *
+from content import *
+from utils import *
+from formatter import *
+from tohtml import *
+import utils
+
import sys, os, time, string, glob, getopt
@@ -28,7 +32,7 @@
file.close()
except:
result = None
- sys.err.write( pathname + " couldn't be accessed\n" )
+ sys.stderr.write( pathname + " couldn't be accessed\n" )
return result
@@ -50,8 +54,7 @@
else:
newpath = [pathname]
- last = len( file_list )
- file_list[last : last] = newpath
+ file_list.extend( newpath )
if len( file_list ) == 0:
file_list = None
@@ -68,13 +71,24 @@
print " docmaker [options] file1 [ file2 ... ]\n"
print "using the following options:\n"
print " -h : print this page"
+ print " -t : set project title, as in '-t \"My Project\"'"
+ print " -o : set output directory, as in '-o mydir'"
+ print " -p : set documentation prefix, as in '-p ft2'"
+ print ""
+ print " --title : same as -t, as in '--title=\"My Project\"'"
+ print " --output : same as -o, as in '--output=mydir'"
+ print " --prefix : same as -p, as in '--prefix=ft2'"
def main( argv ):
"""main program loop"""
+ global output_dir
+
try:
- opts, args = getopt.getopt( argv[1:],"h", [ "help" ] )
+ opts, args = getopt.getopt( sys.argv[1:],
+ "ht:o:p:",
+ [ "help", "title=", "output=", "prefix=" ] )
except getopt.GetoptError:
usage()
@@ -86,17 +100,32 @@
# process options
#
+ project_title = "Project"
+ project_prefix = None
+ output_dir = None
+
for opt in opts:
if opt[0] in ( "-h", "--help" ):
usage()
sys.exit( 0 )
+ if opt[0] in ( "-t", "--title" ):
+ project_title = opt[1]
+
+ if opt[0] in ( "-o", "--output" ):
+ utils.output_dir = opt[1]
+
+ if opt[0] in ( "-p", "--prefix" ):
+ project_prefix = opt[1]
+
+ check_output( )
+
# create context and processor
source_processor = SourceProcessor()
content_processor = ContentProcessor()
# retrieve the list of files to process
- file_list = make_file_list()
+ file_list = make_file_list( args )
for filename in file_list:
source_processor.parse_file( filename )
content_processor.parse_sources( source_processor )
@@ -104,7 +133,7 @@
# process sections
content_processor.finish()
- formatter = HtmlFormatter( content_processor, "Example", "zz" )
+ formatter = HtmlFormatter( content_processor, project_title, project_prefix )
formatter.toc_dump()
formatter.index_dump()
--- a/src/tools/docmaker/tohtml.py
+++ b/src/tools/docmaker/tohtml.py
@@ -1,6 +1,7 @@
from sources import *
from content import *
from formatter import *
+
import time
# The following defines the HTML header used by all generated pages.
--- a/src/tools/docmaker/utils.py
+++ b/src/tools/docmaker/utils.py
@@ -1,5 +1,10 @@
-import string, sys
+import string, sys, os
+# current output directory
+#
+output_dir = None
+
+
# This function is used to sort the index. It is a simple lexicographical
# sort, except that it places capital letters before lowercase ones.
#
@@ -42,10 +47,6 @@
new_list.append( id )
return new_list
-
-# current output directory
-#
-output_dir = None
# Open the standard output to a given project documentation file. Use