From a579da463fd6fedc3680dacd16cf3b8b692e72ee Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 1 Sep 2014 09:27:38 +0530 Subject: [PATCH] Fix use of common GUI launcher script broke generation of command line documentation for GUI commands --- manual/custom.py | 5 ++++- src/calibre/gui_launch.py | 8 ++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/manual/custom.py b/manual/custom.py index 61fd01a50d..1c30a51855 100644 --- a/manual/custom.py +++ b/manual/custom.py @@ -204,7 +204,10 @@ def cli_docs(app): continue module = __import__(module, fromlist=[module.split('.')[-1]]) if hasattr(module, 'option_parser'): - documented_cmds.append((cmd, getattr(module, 'option_parser')())) + try: + documented_cmds.append((cmd, getattr(module, 'option_parser')())) + except TypeError: + documented_cmds.append((cmd, getattr(module, 'option_parser')(cmd))) else: undocumented_cmds.append(cmd) diff --git a/src/calibre/gui_launch.py b/src/calibre/gui_launch.py index 9ddb6fb3d8..178a93de89 100644 --- a/src/calibre/gui_launch.py +++ b/src/calibre/gui_launch.py @@ -49,3 +49,11 @@ def ebook_edit(): from calibre.gui2.tweak_book.main import main main() +def option_parser(basename): + if basename == 'calibre': + from calibre.gui2.main import option_parser + elif basename == 'ebook-viewer': + from calibre.gui2.viewer.main import option_parser + elif basename == 'ebook-edit': + from calibre.gui2.tweak_book.main import option_parser + return option_parser()