commandlineparser / commandlineparser/commandline
Parser still recognizes --help option even when i set the parser setting "AutoHelp" to false
- Dominant language
- C#
- Stars
- 4.8k
- Forks
- 478
- PR merge metrics
- No merged PRs in 30d
Description
(CommandlineParser version 2.7.82)
When using a parser with the `AutoHelp` setting set to `false` i would expect the parser to not recognize the `--help` option unless i have it explicitly declared as part of my options class. If i have no such declaration, i would expect the parser to treat `--help` as an unknown option/error. Unfortunately, this is not the case. The parser still recognizes this option, even when `AutoHelp` is set to false :(
The [documentation comment](https://github.com/commandlineparser/commandline/blob/017a8a21c79b223fbcd541187c7dd546c18ebdda/src/CommandLine/ParserSettings.cs#L140-L142) for `AutoHelp` (also shown by Intellisense) seems to support my expectations:
> Gets or sets a value indicating whether implicit option or verb 'help' should be supported.
But that does not seem to be what that setting actually does...
Thus my question: What is the actual purpose and supposed effect of setting `AutoHelp` for the parser to `false`? And how would i make `--help` not an option?
For example, if i use the unknown option `--foo`, the `HelpText.AutoBuild` method is able to generate a text containing:
```
ERROR(S):
Option 'foo' is unknown.
```
I want to get the same result when calling my program with the (unknown) option `--help`:
```
ERROR(S):
Option 'help' is unknown.
```
Unfortunately, the parser or `HelpText.AutoBuild` method seem to refuse to treat `--help` as an unknown option (both parser settings `AutoHelp` and `IgnoreUnknownArguments` are set to `false`)
:-(
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.