From f4841c1b0ddecd27544e2fd36429fd72c102d162 Mon Sep 17 00:00:00 2001 From: Simon Cozens Date: Mon, 4 May 2020 11:46:32 +0100 Subject: [PATCH] Address feedback, reformat, simplify, fix bugs and typo --- Lib/fontTools/help/__main__.py | 43 ++++++++++++++++------------------ 1 file changed, 20 insertions(+), 23 deletions(-) diff --git a/Lib/fontTools/help/__main__.py b/Lib/fontTools/help/__main__.py index 97237e449..b707c9f09 100644 --- a/Lib/fontTools/help/__main__.py +++ b/Lib/fontTools/help/__main__.py @@ -7,29 +7,26 @@ import fontTools import importlib -def get_description(pkg): - try: - return __import__(pkg+".__main__",globals(),locals(),["__doc__"]).__doc__ - except Exception as e: - return None +def describe(pkg): + try: + description = __import__( + "fontTools." + pkg + ".__main__", globals(), locals(), ["__doc__"] + ).__doc__ + print("fonttools %-10s %s" % (pkg, description), file=sys.stderr) + except Exception as e: + return None + def show_help_list(): - path = fontTools.__path__[0] - for pkg in find_packages(path): - qualifiedPkg = "fontTools."+pkg - description = get_description(qualifiedPkg) - if description: - print("fontools %-10s %s" % (pkg, description)) - pkgpath = path + '/' + qualifiedPkg.replace('.', '/') - if (sys.version_info.major == 3 and sys.version_info.minor < 6): - for _, name, ispkg in iter_modules([pkgpath]): - if get_description(pkg+ '.' + name): - modules.add(pkg + '.' + name) - else: - for info in iter_modules([pkgpath]): - if get_description(pkg+ '.' + info.name): - modules.add(pkg + '.' + info.name) + path = fontTools.__path__[0] + for pkg in find_packages(path): + qualifiedPkg = "fontTools." + pkg + describe(pkg) + pkgpath = path + "/" + qualifiedPkg.replace(".", "/") + for info in iter_modules([pkgpath]): + describe(pkg + "." + info.name) -if __name__ == '__main__': - print("fonttools v%s\n" % fontTools.__version__) - show_help_list() + +if __name__ == "__main__": + print("fonttools v%s\n" % fontTools.__version__, file=sys.stderr) + show_help_list()