MCPcopy
hub / github.com/pallets/click / get_help_record

Method get_help_record

src/click/core.py:3206–3249  ·  view source on GitHub ↗
(self, ctx: Context)

Source from the content-addressed store, hash-verified

3204 )
3205
3206 def get_help_record(self, ctx: Context) -> tuple[str, str] | None:
3207 if self.hidden:
3208 return None
3209
3210 any_prefix_is_slash = False
3211
3212 def _write_opts(opts: cabc.Sequence[str]) -> str:
3213 nonlocal any_prefix_is_slash
3214
3215 rv, any_slashes = join_options(opts)
3216
3217 if any_slashes:
3218 any_prefix_is_slash = True
3219
3220 if not self.is_flag and not self.count:
3221 rv += f" {self.make_metavar(ctx=ctx)}"
3222
3223 return rv
3224
3225 rv = [_write_opts(self.opts)]
3226
3227 if self.secondary_opts:
3228 rv.append(_write_opts(self.secondary_opts))
3229
3230 help = self.help or ""
3231
3232 extra = self.get_help_extra(ctx)
3233 extra_items = []
3234 if "envvars" in extra:
3235 extra_items.append(
3236 _("env var: {var}").format(var=", ".join(extra["envvars"]))
3237 )
3238 if "default" in extra:
3239 extra_items.append(_("default: {default}").format(default=extra["default"]))
3240 if "range" in extra:
3241 extra_items.append(extra["range"])
3242 if "required" in extra:
3243 extra_items.append(_(extra["required"]))
3244
3245 if extra_items:
3246 extra_str = "; ".join(extra_items)
3247 help = f"{help} [{extra_str}]" if help else f"[{extra_str}]"
3248
3249 return ("; " if any_prefix_is_slash else " / ").join(rv), help
3250
3251 def get_help_extra(self, ctx: Context) -> types.OptionHelpExtra:
3252 extra: types.OptionHelpExtra = {}

Calls 1

get_help_extraMethod · 0.95