From 9efdc27332577bb7bda83723d9b24b1677ffd366 Mon Sep 17 00:00:00 2001 From: anthony-melin Date: Sun, 19 Jul 2026 18:42:07 +0200 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20cli=20with=20argparse?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/elironwars/app.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/elironwars/app.py b/src/elironwars/app.py index 8207adf..cd22f2a 100644 --- a/src/elironwars/app.py +++ b/src/elironwars/app.py @@ -1,3 +1,4 @@ +import argparse import logging import os import sys @@ -54,11 +55,20 @@ def play_donjon(level: Level) -> None: def app() -> None: + parser = argparse.ArgumentParser( + prog='elironwars', + description='elironwars CLI', + ) + parser.add_argument('--player', default='Jamin') + parser.add_argument('--ui', default='cli') + parser.add_argument('--log-level', default='ERROR') + args = parser.parse_args() + os.makedirs('logs', exist_ok=True) - logging.basicConfig(filename='logs/app.log', level=logging.getLevelName(os.environ.get('ELIRON_LOGS', 'ERROR'))) + logging.basicConfig(filename='logs/app.log', level=logging.getLevelName(args.log_level)) logging.info('start') - loaded_character = load_character(sys.argv[1] if len(sys.argv) > 1 else "Jamin") + loaded_character = load_character(args.player) if not loaded_character: sys.exit(-1)