def register_command(self, app: typer.Typer) -> None:
"""Register the show command with the Typer application."""
@app.command()
def show(
app_names: list[str] | None = CLIOptions.SHOW_APP_NAME_ARGUMENT_OPTIONAL,
add_command: bool = typer.Option(
False, "--add-command", help="Output the add command needed to recreate each application configuration"
),
full_paths: bool = typer.Option(
False,
"--full-paths",
help=(
"When used with --add-command, output full resolved paths instead of paths "
"relative to global defaults"
),
),
absolute_paths: bool = typer.Option(
False,
"--absolute-paths",
help=(
"When used with --add-command, output strict absolute paths (implies --full-paths) "
"instead of home- or config-relative paths"
),
),
config_dir: Path | None = CLIOptions.CONFIG_DIR_OPTION,
debug: bool = CLIOptions.debug_option(),
output_format: OutputFormat = CLIOptions.FORMAT_OPTION,
_version: bool = CLIOptions.version_option(self._version_callback),
) -> None:
"""Show detailed information about applications.
BASIC USAGE:
appimage-updater show # Show all applications
appimage-updater show FreeCAD # Show single application
appimage-updater show FreeCAD OrcaSlicer # Show multiple applications
CUSTOM CONFIG:
appimage-updater show --config-dir ~/.config/appimage-updater OrcaSlicer
"""
self._execute_show_command(
app_names=app_names,
add_command=add_command,
full_paths=full_paths,
absolute_paths=absolute_paths,
config_dir=config_dir,
debug=debug,
output_format=output_format,
)