Skip to content

plain_formatter

appimage_updater.ui.output.plain_formatter

Plain text output formatter implementation.

PlainOutputFormatter(**kwargs)

Plain text output formatter for simple console output.

This formatter provides basic text output without styling, suitable for scripts and environments that don't support Rich formatting.

Parameters:

Name Type Description Default
**kwargs Any

Additional arguments (ignored for compatibility)

{}
Source code in src/appimage_updater/ui/output/plain_formatter.py
def __init__(self, **kwargs: Any):
    """Initialize the plain formatter.

    Args:
        **kwargs: Additional arguments (ignored for compatibility)
    """
    self._current_section: str | None = None

end_section()

End the current output section.

Source code in src/appimage_updater/ui/output/plain_formatter.py
def end_section(self) -> None:
    """End the current output section."""
    if self._current_section:
        print()  # Add blank line after section
        self._current_section = None

finalize()

Finalize plain text output.

Plain text output goes directly to console, so this returns None.

Returns:

Type Description
str | None

None for console output

Source code in src/appimage_updater/ui/output/plain_formatter.py
def finalize(self) -> str | None:
    """Finalize plain text output.

    Plain text output goes directly to console, so this returns None.

    Returns:
        None for console output
    """
    return None

print(message, **kwargs)

Print a message as plain text.

Parameters:

Name Type Description Default
message str

The message to print

required
**kwargs Any

Additional options (ignored for plain text)

{}
Source code in src/appimage_updater/ui/output/plain_formatter.py
def print(self, message: str, **kwargs: Any) -> None:
    """Print a message as plain text.

    Args:
        message: The message to print
        **kwargs: Additional options (ignored for plain text)
    """
    print(message)

print_application_list(applications)

Display application list as plain text table.

Parameters:

Name Type Description Default
applications list[dict[str, Any]]

List of application dictionaries

required
Source code in src/appimage_updater/ui/output/plain_formatter.py
def print_application_list(self, applications: list[dict[str, Any]]) -> None:
    """Display application list as plain text table.

    Args:
        applications: List of application dictionaries
    """
    self.print_table(applications, title="Configured Applications")

print_check_results(results)

Display check results as plain text table.

Parameters:

Name Type Description Default
results list[dict[str, Any]]

List of check result dictionaries

required
Source code in src/appimage_updater/ui/output/plain_formatter.py
def print_check_results(self, results: list[dict[str, Any]]) -> None:
    """Display check results as plain text table.

    Args:
        results: List of check result dictionaries
    """
    self.print_table(results, title="Update Check Results")

print_config_settings(settings)

Display configuration settings as plain text.

Parameters:

Name Type Description Default
settings dict[str, Any]

Dictionary of configuration settings

required
Source code in src/appimage_updater/ui/output/plain_formatter.py
def print_config_settings(self, settings: dict[str, Any]) -> None:
    """Display configuration settings as plain text.

    Args:
        settings: Dictionary of configuration settings
    """
    print("\nConfiguration Settings")
    print("=" * 22)
    for key, value in settings.items():
        print(f"{key}: {value}")

print_error(message)

Display error message.

Parameters:

Name Type Description Default
message str

Error message to display

required
Source code in src/appimage_updater/ui/output/plain_formatter.py
def print_error(self, message: str) -> None:
    """Display error message.

    Args:
        message: Error message to display
    """
    print(f"ERROR: {message}")

print_info(message)

Display info message.

Parameters:

Name Type Description Default
message str

Info message to display

required
Source code in src/appimage_updater/ui/output/plain_formatter.py
def print_info(self, message: str) -> None:
    """Display info message.

    Args:
        message: Info message to display
    """
    print(f"INFO: {message}")

print_progress(current, total, description='')

Display progress information as plain text.

Parameters:

Name Type Description Default
current int

Current progress value

required
total int

Total progress value

required
description str

Optional progress description

''
Source code in src/appimage_updater/ui/output/plain_formatter.py
def print_progress(self, current: int, total: int, description: str = "") -> None:
    """Display progress information as plain text.

    Args:
        current: Current progress value
        total: Total progress value
        description: Optional progress description
    """
    percentage = (current / total * 100) if total > 0 else 0
    progress_text = f"[{current}/{total}] ({percentage:.1f}%)"
    if description:
        progress_text = f"{description}: {progress_text}"
    print(progress_text)

print_success(message)

Display success message.

Parameters:

Name Type Description Default
message str

Success message to display

required
Source code in src/appimage_updater/ui/output/plain_formatter.py
def print_success(self, message: str) -> None:
    """Display success message.

    Args:
        message: Success message to display
    """
    print(f"SUCCESS: {message}")

print_table(data, title='', headers=None)

Display tabular data as plain text.

Parameters:

Name Type Description Default
data list[dict[str, Any]]

List of dictionaries representing table rows

required
title str

Optional table title

''
headers list[str] | None

Optional custom headers

None
Source code in src/appimage_updater/ui/output/plain_formatter.py
def print_table(self, data: list[dict[str, Any]], title: str = "", headers: list[str] | None = None) -> None:
    """Display tabular data as plain text.

    Args:
        data: List of dictionaries representing table rows
        title: Optional table title
        headers: Optional custom headers
    """
    if not data:
        return

    # Display title and prepare table structure
    self._display_table_title(title)
    table_headers = self._determine_table_headers(data, headers)
    col_widths = self._calculate_column_widths(data, table_headers)

    # Display table content
    self._display_table_headers(table_headers, col_widths)
    self._display_table_rows(data, table_headers, col_widths)

print_warning(message)

Display warning message.

Parameters:

Name Type Description Default
message str

Warning message to display

required
Source code in src/appimage_updater/ui/output/plain_formatter.py
def print_warning(self, message: str) -> None:
    """Display warning message.

    Args:
        message: Warning message to display
    """
    print(f"WARNING: {message}")

start_section(title)

Start a new output section.

Parameters:

Name Type Description Default
title str

Section title

required
Source code in src/appimage_updater/ui/output/plain_formatter.py
def start_section(self, title: str) -> None:
    """Start a new output section.

    Args:
        title: Section title
    """
    self._current_section = title
    print(f"\n{title}")
    print("=" * len(title))