def __call__(self, parser: configargparse.ArgumentParser, namespace: configargparse.Namespace,
values: Sequence[str], option_string: str=None) -> None:
if len(values) > 2:
raise ErrorMessage("%s takes 1 or 2 arguments, not more." % highlight("--init"))
if values[0] not in _initializers:
raise ErrorMessage("Unknown initializer \"%s\". Acceptable values are: %s" %
(highlight(values[0]), highlight(", ".join(_initializers.keys()))))
initializer = _initializers[values[0]]
if len(values) > 1:
initializer.configfolder = values[1] # override config folder if it's not the default
if os.path.exists(initializer.configfolder):
raise ErrorMessage("%s already exists. If you want to overwrite it, remove it first." %
initializer.configfolder)
initializer.build_config()
parser.exit(0)
评论列表
文章目录