ArgumentParser,
Namespace as ArgumentNamespace,
)
+from json import loads as json_loads
from os import environ
+from pathlib import Path
# ourselves
from bricksplom.misc import (
BricksDb,
)
NAME_ENV_DIRNAME = 'BRICKSPLOM_DIR'
-NAME_ENV_LDRAW = 'PATH_LDRAW'
+NAME_ENV_LDRAW = 'LDRAW_DIR'
+NAME_ENV_CONFIG = 'BRICKSPLON_CONFIG'
def main(
return args
args = parse_args()
- db = BricksDb(environ.get(NAME_ENV_DIRNAME, '.'),
- environ.get(NAME_ENV_LDRAW, ''),
- args.ldraw)
+ path_conffile = Path(
+ environ.get(NAME_ENV_CONFIG, '')
+ or str(Path.home().joinpath('.config', 'bricksplom', 'config.json')))
+ config = (json_loads(path_conffile.read_text(encoding='utf8'))
+ if path_conffile.is_file() else {})
+ path_tables = environ.get(NAME_ENV_DIRNAME, config.get('path_tables', ''))
+ path_ldraw = environ.get(NAME_ENV_LDRAW, config.get('path_ldraw', ''))
+ db = BricksDb(path_tables, path_ldraw, args.ldraw)
print(
db.lookup(
table_name=args.table,