Add output of get_usage() to get_info_dict()
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 55/100
Direzione di ricerca
Inizia tracciando get_info_dict() e get_usage() nelle API command e group di Click, quindi esamina la struttura info-dict restituita e la issue correlata #2762. Il lavoro è completato quando il dizionario include l'output di usage per commands e commands annidati senza richiedere il workaround documentato.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Context
I am generating some of my user-facing documentation using get_info_dict(), and was looking for a way to automate the usage as well without having to hardcode it in the docstrings.
Potential solution
Using the calls of get_info_dict() to add a usage key with the value being the output of get_usage().
Other relevant issues: #2762
Workaround
For now I'm using get_info_dict(), then looping through the context to get groups and commands, and using get_usage() on each, then adding it to that dictionary. The code looks something like this (with the for loop matching the structure of my CLI):
info = ctx.to_info_dict()
for cmd_n1 in ctx.command.list_commands(ctx):
cmd2 = ctx.command.get_command(ctx, cmd_n1)
sub_ctx = ctx._make_sub_context(cmd2)
usage = cmd2.get_usage(sub_ctx).replace("Usage: ", "")
info["command"]["commands"][cmd_n1]["usage"] = usage
if isinstance(cmd2, click.Group):
# Groups
for cmd_n2 in cmd2.list_commands(ctx):
cmd3 = cmd2.get_command(ctx, cmd_n2)
sub_ctx3 = sub_ctx._make_sub_context(cmd3)
usage = cmd3.get_usage(sub_ctx3).replace("Usage: ", "")
info["command"]["commands"][cmd_n1]["commands"][cmd_n2]["usage"] = usage
- Lingua principale
- Python
- Stelle
- 17.8k
- Fork
- 3.3k
- Merge medio
- 3g 3h
- PR unite (30g)
- 13
Preparare l'ambiente
Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di pallets/click
-
`show_envvar=True` Drops Environment Variable from Error Messages When Using `auto_envvar_prefix`Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
I maintainer di solito rispondono entro 1 giorno
-
More private utilities that need to be marked and public api deprecatedForse di nuovo libera Una pull request per questa issue è stata chiusa senza essere unita. Apertatyping
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
pallets/click#3847 · 9 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Automatically append ellipsis (`...`) to metavars when `multiple=True` in optionsForse già presa @SparshGarg999 l’ha presa 89 giorni fa. Apertahelp output
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
pallets/click#3652 · 4 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
`HelpFormatter.write_usage` breaks options at a hyphenForse già presa @kdeldycke l’ha presa 9 giorni fa. Apertahelp output
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
pallets/click#3362 · 4 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Add glossary of terms to click reference docsForse già presa @rohitbarhate111-commits l’ha presa 55 giorni fa. Apertadocs
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
pallets/click#3077 · 5 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di pallets/click
Issue simili
-
documentation good first issue priority: P2 status: ready
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
RhinoLink-Tech/data-fabric#500 ·
I maintainer di solito rispondono entro 1 giorno
-
backlog
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
EchoTools/nevr-runtime#2384 ·
I maintainer di solito rispondono entro 1 giorno
-
[Bug]: The H2 series' and the H3C's fan 3 is labelled "Chamber Fan", Bambu calls it the exhaust fanApertaarea:ui
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
btclib-org/btclib#3062 ·
I maintainer di solito rispondono entro 1 giorno
-
area:evals area:infra enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
jse-avl/support-bot#4 · 1 commento ·