diff options
Diffstat (limited to 'mdbp/common.py')
-rw-r--r-- | mdbp/common.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/mdbp/common.py b/mdbp/common.py index d0d2f2d..77cbd33 100644 --- a/mdbp/common.py +++ b/mdbp/common.py @@ -37,6 +37,19 @@ def buildjson(filename: str) -> JsonObject: buildobj, json_load( importlib.resources.open_text("mdbp", "build_schema.json"))) + for attrs in (("input", "dscpath"), ("output", "directory")): + obj = buildobj + for attr in attrs[:-1]: + try: + obj = obj[attr] + except KeyError: + break + else: + try: + obj[attrs[-1]] = str(pathlib.Path(filename).parent / + pathlib.Path(obj[attrs[-1]])) + except KeyError: + pass assert isinstance(buildobj, dict) return buildobj |