From 21bdcf3e1777213e2c52493ae70d85567f780c69 Mon Sep 17 00:00:00 2001 From: yrriban Date: Wed, 24 Dec 2025 12:02:09 -0500 Subject: [PATCH] More clearly delineate the different cases for the text label. The preferences in order are: value passed by flag, value read from config, and value read from stdin. --- dcc/text.py | 32 +++++++++++++++++++++----------- 1 file changed, 21 insertions(+), 11 deletions(-) diff --git a/dcc/text.py b/dcc/text.py index 3a816f7..a93d72a 100644 --- a/dcc/text.py +++ b/dcc/text.py @@ -60,21 +60,19 @@ class Text(dcc.doom_base.WadMap): def get_parser(self, prog_name): parser = super().get_parser(prog_name) parser.add_argument("--nomap", action="store_true") + parser.add_argument("--nomapname", action="store_true") + parser.add_argument("--mapname", "-m", default="") parser.add_argument("--demotype", default="UV-Max Demo") - parser.add_argument("--stdin", "--stdin-only", action="store_true") return parser def take_action(self, parsed_args): - text = None - if not parsed_args.stdin: - map_names = self._config.get("map_names") - if map_names is not None: - text = map_names.get(f"map{parsed_args.map}") - if text is None: - text = input("Map Name? ") - if not parsed_args.nomap: - text = "MAP{}: {}".format(parsed_args.map, text) - text = "{}\n{}".format(text, parsed_args.demotype) + text = "" + if not parsed_args.nomapname: + if not parsed_args.nomap: + text = f"MAP{parsed_args.map}: " + text += self.map_name(parsed_args.mapname, parsed_args.map) + text += "\n" + text = "{}{}".format(text, parsed_args.demotype) with wand.image.Image( height=self.thumbnail_height, width=self.thumbnail_width @@ -85,3 +83,15 @@ class Text(dcc.doom_base.WadMap): img.trim() img.reset_coords() img.save(filename=self.text_thumb_path()) + + def map_name(self, mapname, mapnum): + if mapname != "": + return mapname + + map_names = self._config.get("map_names") + if map_names is not None: + text = map_names.get(f"map{mapnum}") + if text != "": + return text + + return input("Map Name? ")