commandlineparser / commandlineparser/commandline

After customizing help generation, hep VERB does not work

Abierto
#633 16 comentarios 0 reacciones 0 asignados Ver en GitHub
question
Lenguaje dominante
C#
Estrellas
4.8k
Forks
478
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

Did this
```
static async Task Main( string[] args )
{
_logger.Info(CommandLine.Text.HeadingInfo.Default);

var parser = new Parser(p => { p.AutoVersion = false; p.CaseInsensitiveEnumValues = true; });
var parserResult = parser.ParseArguments(args);
await parserResult.MapResult(
(SyncOptions opts) => SyncAsync(opts),
(QueryOptions opts) => QueryAsync(opts),
(TokenOptions opts) => ShowTokenAsync(opts),
errors => Task.FromResult(DisplayHelp(parserResult, errors))
)
.ContinueWith(t => {
if ( System.Diagnostics.Debugger.IsAttached )
{
Console.WriteLine("Press enter...");
Console.ReadLine();
}
});
}

private static int DisplayHelp( ParserResult result, IEnumerable errs )
{
var helpText = CommandLine.Text.HelpText.AutoBuild(result, h =>
{
h.AdditionalNewLineAfterOption = false;
h.AddNewLineBetweenHelpSections = true;
h.AddEnumValuesToHelpText = true;
h.AutoVersion = false;
h.Heading = CommandLine.Text.HeadingInfo.Empty;
h.MaximumDisplayWidth = 110;
h.AddVerbs(typeof(SyncOptions), typeof(QueryOptions), typeof(TokenOptions));
return CommandLine.Text.HelpText.DefaultParsingErrorsHandler(result, h);
}, e => e,
true);
Console.WriteLine(helpText);
return 1;
}
```
Before this I could type `MyProgram help VERB` and it would tell me the same as `MyProgram VERB` minus errors section. Now this gives me only verb list, like if `help` lost its first argument. This does not work either: `MyProgram VERB help` but this does: `MyProgram VERB --help`.

Am I doing something wrong here?

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

Reproduce the behavior with the commands shown, then start at Parser.ParseArguments and the custom DisplayHelp method using HelpText.AutoBuild and DefaultParsingErrorsHandler. Compare `MyProgram help VERB`, `MyProgram VERB help`, and `MyProgram VERB --help`; done means the intended verb-specific help is produced for the documented command without losing its argument.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
csharp
Área
cli
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
38/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.