Integrate with popular NuGet packages for parsing command line
Integrate with popular command-line parsers to allow:
-
Zero-effort improvement to formatting of help texts. Should match the original tool's formatting closely, but improve upon it.
-
Easy customization options like colors, offsets, headers, padding etc.
-
Deep customization by providing source data in a ready-to-use form if the original tool doesn't. Code for generating documents from the points above should serve as a sample in this case.
Likely candidates:
- [ ] CommandLineParser — by far the most popular, supporting both major versions may be a good idea
- [ ] FluentCommandLineParser — popular library
- [ ] PowerArgs — popular library
- [ ] System.CommandLine — part of Core FX Lab, from Microsoft
- [ ] CommandLineUtils — originally from Microsoft ASP.NET MVC, currently maintained by another developer
Evaluate command line packages:
- https://www.nuget.org/packages?q=command+line
- http://nugetmusthaves.com/Package?q=command+line
- https://github.com/quozd/awesome-dotnet#cli
Check out System.CommandLine from the corefxlab. There's a chance it might become the built-in way to do this for .NET.
@drewnoakes Is it available as a NuGet package? I can't find it. It has some limitations and questionable implementation in a few places, but I like its API. If it isn't available on NuGet though, I can't support it in a sensible way. It's also been in CoreFXLabs for 3 years already, which isn't promising.
[Edit] Found the package on MyGet. Better than nothing, but it certainly complicates things. Microsoft also stole System.CommandLine NuGet identifier, but they aren't using it.
I'm not associated with the project and know as much as you. Only thought you might like to look at it as well as those in your list.
One more nice command line parsing package for .Net Standard: https://github.com/natemcmaster/CommandLineUtils