mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-09 09:21:46 +00:00
ifcopenshell.draw - omit sys.argv + help message
To make sure user will get an error if files are not provided - if we use sys.argv then we always have __file__ in it and if user won't provide fiels they'll get a less readable error
Before:
sr.setFile(files[0])
~~~~~^^^
IndexError: list index out of range
Now:
usage: draw.py files [files ...]
draw.py: error: the following arguments are required: files
This commit is contained in:
@@ -406,7 +406,15 @@ if __name__ == "__main__":
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
|
||||
parser.add_argument("files", type=str, nargs="+")
|
||||
parser.add_argument(
|
||||
"files",
|
||||
type=str,
|
||||
nargs="+",
|
||||
help=(
|
||||
"List of files for script to use. "
|
||||
"Last file is considered an output file (.svg), all other files are existing IFC files."
|
||||
),
|
||||
)
|
||||
|
||||
for field in fields(draw_settings):
|
||||
if field.type == bool:
|
||||
@@ -418,9 +426,8 @@ if __name__ == "__main__":
|
||||
"--" + field.name.replace("_", "-"), dest=field.name, type=field.type, default=field.default
|
||||
)
|
||||
|
||||
args = vars(parser.parse_args(sys.argv))
|
||||
args = vars(parser.parse_args())
|
||||
files = args.pop("files")
|
||||
files.remove(__file__)
|
||||
output = files.pop()
|
||||
|
||||
settings = draw_settings(**args)
|
||||
|
||||
Reference in New Issue
Block a user