src/eric7/eric7_doc.py

branch
eric7
changeset 9221
bf71ee032bb4
parent 9211
99eb1cb030a5
child 9413
80c06d472826
--- a/src/eric7/eric7_doc.py	Wed Jul 13 11:16:20 2022 +0200
+++ b/src/eric7/eric7_doc.py	Wed Jul 13 14:55:47 2022 +0200
@@ -38,14 +38,13 @@
 def usage():
     """
     Function to print some usage information.
-    
+
     It prints a reference of all commandline parameters that may
     be used and ends the application.
     """
     print("eric7_doc")
     print()
-    print("Copyright (c) 2003 - 2022 Detlev Offenbach"
-          " <detlev@die-offenbachs.de>.")
+    print("Copyright (c) 2003 - 2022 Detlev Offenbach" " <detlev@die-offenbachs.de>.")
     print()
     print("Usage:")
     print()
@@ -100,8 +99,7 @@
     print("  --cfheader-color=color")
     print("        Specify the text color of class and function headers.")
     print("  --cfheader-background-color=color")
-    print("        Specify the text background color of class and"
-          " function headers.")
+    print("        Specify the text background color of class and" " function headers.")
     print("  --link-color=color")
     print("        Specify the text color of hyperlinks.")
     print()
@@ -141,7 +139,8 @@
         """ conditions.\n"""
         """There is NO warranty; not even for MERCHANTABILITY or FITNESS"""
         """ FOR A\n"""
-        """PARTICULAR PURPOSE.""".format(Version))
+        """PARTICULAR PURPOSE.""".format(Version)
+    )
     sys.exit(1)
 
 
@@ -153,24 +152,55 @@
 
     try:
         opts, args = getopt.getopt(
-            sys.argv[1:], "c:ehio:Rrs:t:Vx:",
-            ["exclude=", "extension=", "help", "noindex", "noempty", "outdir=",
-             "recursive", "startdir=", "style-sheet=", "version",
-             "exclude-file=", "eol=",
-             "body-color=", "body-background-color=",
-             "l1header-color=", "l1header-background-color=",
-             "l2header-color=", "l2header-background-color=",
-             "cfheader-color=", "cfheader-background-color=",
-             "link-color=",
-             "create-qhp", "qhp-outdir=", "qhp-namespace=",
-             "qhp-virtualfolder=", "qhp-filtername=", "qhp-filterattribs=",
-             "qhp-title=", "create-qhc",
-             ])
+            sys.argv[1:],
+            "c:ehio:Rrs:t:Vx:",
+            [
+                "exclude=",
+                "extension=",
+                "help",
+                "noindex",
+                "noempty",
+                "outdir=",
+                "recursive",
+                "startdir=",
+                "style-sheet=",
+                "version",
+                "exclude-file=",
+                "eol=",
+                "body-color=",
+                "body-background-color=",
+                "l1header-color=",
+                "l1header-background-color=",
+                "l2header-color=",
+                "l2header-background-color=",
+                "cfheader-color=",
+                "cfheader-background-color=",
+                "link-color=",
+                "create-qhp",
+                "qhp-outdir=",
+                "qhp-namespace=",
+                "qhp-virtualfolder=",
+                "qhp-filtername=",
+                "qhp-filterattribs=",
+                "qhp-title=",
+                "create-qhc",
+            ],
+        )
     except getopt.error:
         usage()
 
-    excludeDirs = [".svn", ".hg", ".git", ".ropeproject", ".eric7project",
-                   ".jedi", "dist", "build", "doc", "docs"]
+    excludeDirs = [
+        ".svn",
+        ".hg",
+        ".git",
+        ".ropeproject",
+        ".eric7project",
+        ".jedi",
+        "dist",
+        "build",
+        "doc",
+        "docs",
+    ]
     excludePatterns = []
     startDir = ""
     outputDir = "doc"
@@ -178,10 +208,10 @@
     doIndex = True
     noempty = False
     newline = None
-    
+
     stylesheetFile = ""
     colors = eric7docDefaultColors.copy()
-    
+
     qtHelpCreation = False
     qtHelpOutputDir = "help"
     qtHelpNamespace = ""
@@ -190,7 +220,7 @@
     qtHelpFilterAttribs = ""
     qtHelpTitle = ""
     qtHelpCreateCollection = False
-    
+
     for k, v in opts:
         if k in ["-s", "--startdir"]:
             startDir = v
@@ -218,31 +248,31 @@
             supportedExtensions.append(v)
         elif k == "--eol":
             if v.lower() == "cr":
-                newline = '\r'
+                newline = "\r"
             elif v.lower() == "lf":
-                newline = '\n'
+                newline = "\n"
             elif v.lower() == "crlf":
-                newline = '\r\n'
-        
+                newline = "\r\n"
+
         elif k == "--body-color":
-            colors['BodyColor'] = v
+            colors["BodyColor"] = v
         elif k == "--body-background-color":
-            colors['BodyBgColor'] = v
+            colors["BodyBgColor"] = v
         elif k == "--l1header-color":
-            colors['Level1HeaderColor'] = v
+            colors["Level1HeaderColor"] = v
         elif k == "--l1header-background-color":
-            colors['Level1HeaderBgColor'] = v
+            colors["Level1HeaderBgColor"] = v
         elif k == "--l2header-color":
-            colors['Level2HeaderColor'] = v
+            colors["Level2HeaderColor"] = v
         elif k == "--l2header-background-color":
-            colors['Level2HeaderBgColor'] = v
+            colors["Level2HeaderBgColor"] = v
         elif k == "--cfheader-color":
-            colors['CFColor'] = v
+            colors["CFColor"] = v
         elif k == "--cfheader-background-color":
-            colors['CFBgColor'] = v
+            colors["CFBgColor"] = v
         elif k == "--link-color":
-            colors['LinkColor'] = v
-        
+            colors["LinkColor"] = v
+
         elif k == "--create-qhp":
             qtHelpCreation = True
         elif k == "--qhp-outdir":
@@ -262,16 +292,15 @@
 
     if not args:
         usage()
-    
-    if (
-        qtHelpCreation and
-        (qtHelpNamespace == "" or
-         qtHelpFolder == "" or
-         '/' in qtHelpFolder or
-         qtHelpTitle == "")
+
+    if qtHelpCreation and (
+        qtHelpNamespace == ""
+        or qtHelpFolder == ""
+        or "/" in qtHelpFolder
+        or qtHelpTitle == ""
     ):
         usage()
-    
+
     basename = ""
 
     if outputDir:
@@ -280,19 +309,20 @@
                 os.makedirs(outputDir)
             except OSError:
                 sys.stderr.write(
-                    "Could not create output directory {0}.".format(outputDir))
+                    "Could not create output directory {0}.".format(outputDir)
+                )
                 sys.exit(2)
     else:
         outputDir = os.getcwd()
     outputDir = os.path.abspath(outputDir)
-    
+
     if stylesheetFile:
         try:
             shutil.copy(stylesheetFile, os.path.join(outputDir, "styles.css"))
         except OSError:
             sys.stderr.write(
-                "The CSS stylesheet '{0}' does not exist\n".format(
-                    stylesheetFile))
+                "The CSS stylesheet '{0}' does not exist\n".format(stylesheetFile)
+            )
             sys.exit(2)
     else:
         try:
@@ -300,12 +330,12 @@
                 sf.write(TemplatesListsStyleCSS.cssTemplate.format(**colors))
         except OSError:
             sys.stderr.write(
-                "The CSS stylesheet '{0}' could not be created\n".format(
-                    stylesheetFile))
+                "The CSS stylesheet '{0}' could not be created\n".format(stylesheetFile)
+            )
             sys.exit(2)
-    
+
     indexGenerator = IndexGenerator(outputDir)
-    
+
     if qtHelpCreation:
         if qtHelpOutputDir:
             if not os.path.isdir(qtHelpOutputDir):
@@ -314,37 +344,42 @@
                 except OSError:
                     sys.stderr.write(
                         "Could not create QtHelp output directory {0}.".format(
-                            qtHelpOutputDir))
+                            qtHelpOutputDir
+                        )
+                    )
                     sys.exit(2)
         else:
             qtHelpOutputDir = os.getcwd()
         qtHelpOutputDir = os.path.abspath(qtHelpOutputDir)
-        
-        qtHelpGenerator = QtHelpGenerator(outputDir,
-                                          qtHelpOutputDir, qtHelpNamespace,
-                                          qtHelpFolder, qtHelpFilterName,
-                                          qtHelpFilterAttribs, qtHelpTitle,
-                                          qtHelpCreateCollection)
-    
+
+        qtHelpGenerator = QtHelpGenerator(
+            outputDir,
+            qtHelpOutputDir,
+            qtHelpNamespace,
+            qtHelpFolder,
+            qtHelpFilterName,
+            qtHelpFilterAttribs,
+            qtHelpTitle,
+            qtHelpCreateCollection,
+        )
+
     if startDir:
         os.chdir(os.path.abspath(startDir))
-    
+
     for arg in args:
         if os.path.isdir(arg):
-            if os.path.exists(os.path.join(
-                    arg, Utilities.joinext("__init__", ".py"))):
+            if os.path.exists(os.path.join(arg, Utilities.joinext("__init__", ".py"))):
                 basename = os.path.dirname(arg)
-                if arg == '.':
+                if arg == ".":
                     sys.stderr.write("The directory '.' is a package.\n")
-                    sys.stderr.write(
-                        "Please repeat the call giving its real name.\n")
+                    sys.stderr.write("Please repeat the call giving its real name.\n")
                     sys.stderr.write("Ignoring the directory.\n")
                     continue
             else:
                 basename = arg
             if basename:
                 basename = "{0}{1}".format(basename, os.sep)
-            
+
             if recursive and not os.path.islink(arg):
                 names = [arg] + Utilities.getDirs(arg, excludeDirs)
             else:
@@ -352,16 +387,18 @@
         else:
             basename = ""
             names = [arg]
-        
+
         for filename in names:
             inpackage = False
             if os.path.isdir(filename):
                 files = []
                 for ext in supportedExtensions:
-                    files.extend(glob.glob(os.path.join(
-                        filename, Utilities.joinext("*", ext))))
+                    files.extend(
+                        glob.glob(os.path.join(filename, Utilities.joinext("*", ext)))
+                    )
                     initFile = os.path.join(
-                        filename, Utilities.joinext("__init__", ext))
+                        filename, Utilities.joinext("__init__", ext)
+                    )
                     if initFile in files:
                         inpackage = True
                         files.remove(initFile)
@@ -371,7 +408,7 @@
                     files = glob.glob(filename)
                 else:
                     files = [filename]
-            
+
             for file in files:
                 skipIt = False
                 for pattern in excludePatterns:
@@ -380,11 +417,14 @@
                         break
                 if skipIt:
                     continue
-                
+
                 try:
                     module = Utilities.ModuleParser.readModule(
-                        file, basename=basename,
-                        inpackage=inpackage, extensions=supportedExtensions)
+                        file,
+                        basename=basename,
+                        inpackage=inpackage,
+                        extensions=supportedExtensions,
+                    )
                     moduleDocument = ModuleDocument(module)
                     doc = moduleDocument.genDocument()
                 except OSError as v:
@@ -393,47 +433,47 @@
                 except ImportError as v:
                     sys.stderr.write("{0} error: {1}\n".format(file, v))
                     continue
-                
-                f = Utilities.joinext(os.path.join(
-                    outputDir, moduleDocument.name()), ".html")
-                
+
+                f = Utilities.joinext(
+                    os.path.join(outputDir, moduleDocument.name()), ".html"
+                )
+
                 # remember for index file generation
                 indexGenerator.remember(file, moduleDocument, basename)
-                
+
                 # remember for QtHelp generation
                 if qtHelpCreation:
                     qtHelpGenerator.remember(file, moduleDocument, basename)
-                
+
                 if (
-                    (noempty or file.endswith('__init__.py')) and
-                    moduleDocument.isEmpty()
-                ):
+                    noempty or file.endswith("__init__.py")
+                ) and moduleDocument.isEmpty():
                     continue
-                
+
                 # generate output
                 try:
-                    with open(f, "w", encoding="utf-8",
-                              newline=newline) as out:
+                    with open(f, "w", encoding="utf-8", newline=newline) as out:
                         out.write(doc)
                 except OSError as v:
                     sys.stderr.write("{0} error: {1}\n".format(file, v[1]))
                 else:
                     sys.stdout.write("{0} ok\n".format(f))
-    
+
     sys.stdout.flush()
     sys.stderr.flush()
 
     # write index files
     if doIndex:
         indexGenerator.writeIndices(basename, newline=newline)
-    
+
     # generate the QtHelp files
     if qtHelpCreation:
         qtHelpGenerator.generateFiles(newline=newline)
 
     sys.exit(0)
 
-if __name__ == '__main__':
+
+if __name__ == "__main__":
     main()
 
 #

eric ide

mercurial