| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- ##############################################################################
- # Name: misc/scripts/update_doc_utils.py
- # Purpose: base utilities for others update_doc_*.py scripts
- # Created: 2007-08-1
- # Copyright: (c) 2007 Francesco Montorsi
- # Licence: wxWindows licence
- ##############################################################################
- import sys, os, glob, distutils.file_util
- DOCS_PATH="../../docs/latex/wx"
- # Calls the given callback with the name of a documented class, its .tex related file,
- # the content of that .tex file and the number of the line of the relative \class tag,
- # for all documented class in DOCS_PATH. If the callback returns false the processing is stopped.
- # Returns the number of .tex files processed.
- def scanTexFiles(callback):
- count = 0
- for f in glob.glob(DOCS_PATH + '/*.tex'):
- file = open(f, "r")
- if not file:
- print "could not open %s" % f
- continue
- print "opened file %s" % f
- count = count + 1
- # search \class tags
- content = file.readlines()
- classdecl = 0
- for i in range(len(content)):
- line = content[i]
- if "\class{" in line:
- classdecl = classdecl + 1
- # polish the class name
- classname = line
- classname = classname[classname.find("\class{"):]
- classname = classname[classname.find("{")+1:classname.find("}")]
- print " the class declared is named '%s'" % classname
- # process this \class
- if not callback(classname, f, content, i):
- return count
- print " file %s contains %d class declarations" % (f, classdecl)
- return count
|