Allow creating sub-comman option parsers based on current arguments

This commit is contained in:
Kovid Goyal 2017-05-01 22:32:24 +05:30
parent 4b09406136
commit 69e8cdd749
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C
22 changed files with 24 additions and 24 deletions

View File

@ -204,7 +204,7 @@ def do_add(
sys.stdout = orig
def option_parser(get_parser):
def option_parser(get_parser, args):
parser = get_parser(
_(
'''\

View File

@ -13,7 +13,7 @@ def implementation(db, notify_changes, *args):
is_remote
def option_parser(get_parser):
def option_parser(get_parser, args):
pass

View File

@ -23,7 +23,7 @@ def implementation(db, notify_changes, book_id, data, fmt, replace):
return added
def option_parser(get_parser):
def option_parser(get_parser, args):
parser = get_parser(
_(
'''\

View File

@ -13,7 +13,7 @@ def implementation(db, notify_changes, *args):
is_remote
def option_parser(get_parser):
def option_parser(get_parser, args):
pass

View File

@ -13,7 +13,7 @@ def implementation(db, notify_changes, *args):
is_remote
def option_parser(get_parser):
def option_parser(get_parser, args):
pass

View File

@ -13,7 +13,7 @@ def implementation(db, notify_changes, *args):
is_remote
def option_parser(get_parser):
def option_parser(get_parser, args):
pass

View File

@ -13,7 +13,7 @@ def implementation(db, notify_changes, *args):
is_remote
def option_parser(get_parser):
def option_parser(get_parser, args):
pass

View File

@ -13,7 +13,7 @@ def implementation(db, notify_changes, *args):
is_remote
def option_parser(get_parser):
def option_parser(get_parser, args):
pass

View File

@ -13,7 +13,7 @@ def implementation(db, notify_changes, *args):
is_remote
def option_parser(get_parser):
def option_parser(get_parser, args):
pass

View File

@ -38,7 +38,7 @@ def implementation(db, notify_changes, action, *args):
db.copy_format_to(book_id, fmt, dest)
def option_parser(get_parser):
def option_parser(get_parser, args):
parser = get_parser(
_(
'''\

View File

@ -225,7 +225,7 @@ def do_list(
print()
def option_parser(get_parser):
def option_parser(get_parser, args):
parser = get_parser(
_(
'''\

View File

@ -13,7 +13,7 @@ def implementation(db, notify_changes, *args):
is_remote
def option_parser(get_parser):
def option_parser(get_parser, args):
pass

View File

@ -20,7 +20,7 @@ def implementation(db, notify_changes, ids, permanent):
notify_changes(books_deleted(ids))
def option_parser(get_parser):
def option_parser(get_parser, args):
p = get_parser(
_(
'''\

View File

@ -13,7 +13,7 @@ def implementation(db, notify_changes, *args):
is_remote
def option_parser(get_parser):
def option_parser(get_parser, args):
pass

View File

@ -20,7 +20,7 @@ def implementation(db, notify_changes, book_id, fmt):
notify_changes(formats_removed(fmt_map))
def option_parser(get_parser):
def option_parser(get_parser, args):
return get_parser(
_(
'''

View File

@ -13,7 +13,7 @@ def implementation(db, notify_changes, *args):
is_remote
def option_parser(get_parser):
def option_parser(get_parser, args):
pass

View File

@ -13,7 +13,7 @@ def implementation(db, notify_changes, *args):
is_remote
def option_parser(get_parser):
def option_parser(get_parser, args):
pass

View File

@ -13,7 +13,7 @@ def implementation(db, notify_changes, *args):
is_remote
def option_parser(get_parser):
def option_parser(get_parser, args):
pass

View File

@ -13,7 +13,7 @@ def implementation(db, notify_changes, *args):
is_remote
def option_parser(get_parser):
def option_parser(get_parser, args):
pass

View File

@ -56,7 +56,7 @@ def implementation(db, notify_changes, action, *args):
return db.get_metadata(book_id)
def option_parser(get_parser):
def option_parser(get_parser, args):
parser = get_parser(
_(
'''

View File

@ -21,7 +21,7 @@ def implementation(db, notify_changes, book_id):
return db.get_metadata(book_id)
def option_parser(get_parser):
def option_parser(get_parser, args):
parser = get_parser(
_(
'''

View File

@ -27,10 +27,10 @@ COMMANDS = (
)
def option_parser_for(cmd):
def option_parser_for(cmd, args=()):
def cmd_option_parser():
return module_for_cmd(cmd).option_parser(get_parser)
return module_for_cmd(cmd).option_parser(get_parser, args)
return cmd_option_parser
@ -239,7 +239,7 @@ def main(args=sys.argv):
parser.print_help()
return 1
del args[i]
parser = option_parser_for(cmd)()
parser = option_parser_for(cmd, args)()
opts, args = parser.parse_args(args)
return run_cmd(cmd, opts, args[1:], DBCtx(opts))