/// <summary> /// Prints help to formatter /// </summary> /// <param name="configuration">Full configuration</param> /// <param name="command">Specific command to output</param> /// <param name="operationMessages">List of operation message</param> public override sealed void PrintHelp(Configuration configuration, Command command, Operation.Items operationMessages) { // Write errors var errors = operationMessages.Where(i => i.Type == Operation.ItemType.Error); if (errors.Any()) { foreach (var e in errors) { WriteLine(e.Message, System.ConsoleColor.Red); } WriteLine(); } // Write program name if (!String.IsNullOrEmpty(configuration.Program.Name)) { WriteLine($"{configuration.Program.Name} ({System.Reflection.Assembly.GetEntryAssembly().GetName().Version})"); if (!String.IsNullOrEmpty(configuration.Program.Description)) { WriteLine(configuration.Program.Description); } if (!String.IsNullOrEmpty(configuration.Program.HelpUrl)) { WriteLine(configuration.Program.HelpUrl); } WriteLine(); } // Single command, or multiple command if (command != null) { PrintHelpCommand(configuration, command); } else { PrintHelpConfiguration(configuration); } }
/// <summary> /// Prints help to formatter /// </summary> /// <param name="configuration">Full configuration</param> /// <param name="command">Specific command to output</param> /// <param name="operationMessages">List of operation message</param> public abstract void PrintHelp(Configuration configuration, Command command, Operation.Items operationMessages);