gh-141679: Add colour to defaults in argparse help (#141680)

Co-authored-by: Savannah Ostrowski <savannah@python.org>
This commit is contained in:
Hugo van Kemenade 2025-11-23 02:26:50 +02:00 committed by GitHub
parent 227b9d326e
commit e73fbbacbb
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 20 additions and 8 deletions

View file

@ -748,7 +748,14 @@ def _get_help_string(self, action):
if action.default is not SUPPRESS:
defaulting_nargs = [OPTIONAL, ZERO_OR_MORE]
if action.option_strings or action.nargs in defaulting_nargs:
help += _(' (default: %(default)s)')
t = self._theme
default_str = _(" (default: %(default)s)")
prefix, suffix = default_str.split("%(default)s")
help += (
f" {t.default}{prefix.lstrip()}"
f"{t.default_value}%(default)s"
f"{t.default}{suffix}{t.reset}"
)
return help