mirror of
https://github.com/nsnail/spectre.console.git
synced 2025-04-16 00:42:51 +08:00

Allow custom help providers * Version option will show in help even with a default command * Reserve `-v` and `--version` as special Spectre.Console command line arguments (nb. breaking change for Spectre.Console users who have a default command with a settings class that uses either of these switches). * Help writer correctly determines if trailing commands exist and whether to display them as optional or mandatory in the usage statement. * Ability to control the number of indirect commands to display in the help text when the command itself doesn't have any examples of its own. Defaults to 5 (for backward compatibility) but can be set to any integer or zero to disable completely. * Significant increase in unit test coverage for the help writer. * Minor grammatical improvements to website documentation.
21 lines
831 B
C#
21 lines
831 B
C#
namespace Spectre.Console.Cli.Help;
|
|
|
|
/// <summary>
|
|
/// The help provider interface for Spectre.Console.
|
|
/// </summary>
|
|
/// <remarks>
|
|
/// Implementations of this interface are responsbile
|
|
/// for writing command help to the terminal when the
|
|
/// `-h` or `--help` has been specified on the command line.
|
|
/// </remarks>
|
|
public interface IHelpProvider
|
|
{
|
|
/// <summary>
|
|
/// Writes help information for the application.
|
|
/// </summary>
|
|
/// <param name="model">The command model to write help for.</param>
|
|
/// <param name="command">The command for which to write help information (optional).</param>
|
|
/// <returns>An enumerable collection of <see cref="IRenderable"/> objects representing the help information.</returns>
|
|
IEnumerable<IRenderable> Write(ICommandModel model, ICommandInfo? command);
|
|
}
|