Table of Contents

Namespace Ploch.CommandLine.Spectre.Output

Classes

AnsiConsoleMarkupOutput

Provides an implementation of IOutput that uses Spectre.Console's ANSI console for markup-enabled output.

BaseExceptionMessageFormatter<TException>

Base formatter for exception messages that handles formatting of exception type, message, and inner exceptions.

ConvertibleMessageFormatter

Formats messages that implement the IConvertible interface.

EnumerableMessageFormatter

Formats IEnumerable objects into a string representation with each item on a new line prefixed with a pointing finger emoji.

EnumerableMessageWriter

A message writer that handles writing enumerable collections to the output.

ExceptionMessageFormatter

Formats exception messages for display in the console.

ExceptionMessageWriter

Specialised message writer for handling and displaying exceptions.

FormattableStringMessageWriter

Renders a FormattableString as interpolated markup: the template is parsed as Spectre markup, the string values in the holes are escaped rather than parsed (a value of another type is formatted and its text parsed as markup, as Spectre.Console does), and the holes are formatted with the caller's format provider.

MessageFormatterProcessor

Processes and formats messages using registered formatters and writers.

ServiceCollectionOutputExtensions

Extension methods for IServiceCollection to register message formatters and writers.

StringMessageFormatter

Formats string messages, substituting an empty string for null.

StringMessageWriter

Writes string messages to the console verbatim.

TypeMessageFormatter<TMessage>

Base class for formatters that turn a message of a specific type into its display string.

TypeMessageHandler<TMessage>

Base class for message handlers that accept messages of a specific type.

TypeMessageWriter<TMessage>

Base class for writers that render a message of a specific type to the console.

Win32ExceptionMessageFormatter

Formats Win32Exception instances, including the native error code in the rendered message.

Interfaces

IMessageFormatter

Defines a contract for formatting messages into a string representation.

IMessageFormatterProcessor

Defines methods for processing and formatting messages. This interface allows extracting and writing formatted representations of messages, with optional markup tags applied.

IMessageFormatter<TMessage>

Defines a contract for formatting messages of a specific type into a string representation.

IMessageHandler

Represents a handler for processing console messages of a specific type.

IMessageWriter

Defines a writer for outputting messages with optional formatting.

IMessageWriter<TMessage>

Defines a strongly-typed writer for outputting messages of a specific type with optional formatting.

IOutput

Represents a console output interface for writing formatted text and objects.