argparse-tui¶
Classes¶
TuiAction ¶
TuiAction(option_strings: list[str], dest: str = argparse.SUPPRESS, default: Any = argparse.SUPPRESS, help: str | None = 'Open Textual UI.', const: str | None = None, metavar: str | None = None, parent_parser: argparse.ArgumentParser | None = None, **_kwargs: Any)
argparse Action
that will analyze the parser and display a TUI.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
option_strings |
list[str]
|
... |
required |
dest |
str
|
... |
SUPPRESS
|
default |
Any
|
... |
SUPPRESS
|
help |
str | None
|
... |
'Open Textual UI.'
|
const |
str | None
|
... |
None
|
metavar |
str | None
|
... |
None
|
parent_parser |
ArgumentParser | None
|
... |
None
|
Examples:
>>> import argparse
>>> from argparse_tui import TuiAction
...
>>> parser = argparse.ArgumentParser()
>>> _ = parser.add_argument('--tui', action=TuiAction)
...
>>> parser.print_usage()
usage: __main__.py [-h] [--tui]
Functions¶
add_tui_argument ¶
add_tui_argument(parser: argparse.ArgumentParser, parent_parser: argparse.ArgumentParser | None = None, option_strings: str | list[str] | None = None, help: str = 'Open Textual UI.', default=argparse.SUPPRESS, **kwargs) -> None
Parameters:
Name | Type | Description | Default |
---|---|---|---|
parser |
ArgumentParser
|
the argparse parser to add the argument to. |
required |
parent_parser |
ArgumentParser | None
|
the parent of the given parser. |
None
|
option_strings |
str | list[str] | None
|
list of CLI flags that will invoke the TUI |
None
|
help |
str
|
... |
'Open Textual UI.'
|
default |
... |
SUPPRESS
|
|
**kwargs |
passed to |
{}
|
Examples:
>>> import argparse
>>> from argparse_tui import add_tui_argument
...
>>> parser = argparse.ArgumentParser()
...
>>> add_tui_argument(parser)
...
>>> parser.print_usage()
usage: __main__.py [-h] [--tui]
add_tui_command ¶
add_tui_command(parser: argparse.ArgumentParser, command: str = DEFAULT_COMMAND_NAME, help: str = 'Open Textual UI.', **kwargs: Any) -> argparse._SubParsersAction
Parameters:
Name | Type | Description | Default |
---|---|---|---|
parser |
ArgumentParser
|
the argparse parser |
required |
command |
str
|
name of the CLI command that will invoke the TUI (default= |
DEFAULT_COMMAND_NAME
|
help |
str
|
help message for the argument |
'Open Textual UI.'
|
**kwargs |
Any
|
if subparsers do not already exist, create with these kwargs. |
{}
|
Returns:
Type | Description |
---|---|
_SubParsersAction
|
The Argparse subparsers action that was discovered or created. |
Examples:
>>> import argparse
>>> from argparse_tui import add_tui_argument
...
>>> parser = argparse.ArgumentParser()
>>> subparsers = parser.add_subparsers()
...
>>> _ = add_tui_command(parser)
...
>>> parser.print_usage()
usage: __main__.py [-h] {tui} ...
build_tui ¶
build_tui(parser: argparse.ArgumentParser, cli_args: Sequence[str] | None = None, subparser_ignorelist: list[argparse.ArgumentParser] | None = None) -> App
Build a Textual UI (TUI) given an argparse parser.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
parser |
ArgumentParser
|
... |
required |
cli_args |
Sequence[str] | None
|
Arguments parsed for pre-populating the TUI form. |
None
|
subparser_ignorelist |
list[ArgumentParser] | None
|
... |
None
|
Returns:
Type | Description |
---|---|
App
|
a Textualize App |
Examples:
>>> import argparse
>>> from argparse_tui import build_tui
>>> import textual
...
>>> parser = argparse.ArgumentParser(prog="awesome-app")
>>> _ = parser.add_argument("--value")
...
>>> app = build_tui(parser)
...
>>> isinstance(app, textual.app.App)
True
invoke_tui ¶
invoke_tui(parser: argparse.ArgumentParser, cli_args: Sequence[str] | None = None, subparser_ignorelist: list[argparse.ArgumentParser] | None = None) -> None
Invoke a Textual UI (TUI) given an argparse parser.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
parser |
ArgumentParser
|
... |
required |
cli_args |
Sequence[str] | None
|
Arguments parsed for pre-populating the TUI form. |
None
|
subparser_ignorelist |
list[ArgumentParser] | None
|
... |
None
|
Examples:
>>> import argparse
>>> from argparse_tui import invoke_tui
...
>>> parser = argparse.ArgumentParser(prog="awesome-app")
>>> _ = parser.add_argument("--value")
...
>>> invoke_tui(parser)