commandlineparser / commandlineparser/commandline

How to get or implement prefix for version number

Offen
#712 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
C#
Sterne
4.8k
Forks
478
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Hello all,

I am wondering how to add a custom prefix to the version information that gets printed both with the ```--help``` and ```--version``` options.

For the version ```2.0.0-beta``` an user-implemented prefix shall be added to get for both options an output like ```Myapp v2.0.0-beta``` or ```Myapp customprefix2.0.0-beta```.

For ```--help``` I could override ```HelpText.Heading``` which is an option, but not the preferred way I would do it.
For ```--version``` I did not find an option for overriding. Did I miss something reading the documentation?

Would it be correct to extend the following method with a configuration option like ```versionPrefix``` (which could be a private variable or a parameter of the ```HeadingInfo``` method)?
https://github.com/commandlineparser/commandline/blob/d443a51aeb3a418425e970542b3b96e9da5f62e2/src/CommandLine/Text/HeadingInfo.cs#L28-L34
```
public HeadingInfo(string programName, string versionPrefix, string version = null)
{
if (string.IsNullOrWhiteSpace(programName)) throw new ArgumentException("programName");
if (versionPrefix == null) throw new ArgumentException("versionPrefix");

this.programName = programName;
this.version = string.IsNullOrWhiteSpace(version) ? null : versionPrefix + version;
}
```
```
private string versionPrefix;

///
/// Gets or sets an optional prefix when displaying the version information.
///
public string VersionPrefix
{
get { return versionPrefix; }
set { versionPrefix = string.IsNullOrWhiteSpace(value) ? string.Empty : value; }
}
```

Where can the configuration option be assigned and how is the preferred way to route it into the HeadingInfo class?

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.