Matt Nadareski
8695e519c6
Add new manpage reference implementation to README
rolling
2026-07-01 13:54:59 -04:00
gmipf
754aa6bc32
Add man page generation from the command-line model ( #2 )
...
* Add man page generation from the command-line model
Add CommandSet.OutputManPage (string and file overloads), a ManPageInfo
type for document-level metadata, a reference ManPage feature invoked as a
man command, and UserInput.FormatManPage which reuses FormatFlags so the
page cannot drift from --help. Output uses only portable man(7) macros and
validates warning-free under groff and mandoc -T lint.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
* Address review feedback on man page generation
Rename the man page API to the single-word "Manpage" spelling throughout
(Manpage feature, ManpageInfo, CommandSet.OutputManpage,
UserInput.FormatManpage) for consistency with the "manpage" convention.
- Drop the redundant null check in OutputManpage; info is non-nullable
under the enabled nullable context.
- Move the tests that exercise CommandSet.OutputManpage into
CommandSetTests as a "Manpage Output" region, and relocate the Manpage
feature test into a path-synced Features subfolder
(SabreTools.CommandLine.Test.Features). Private test helpers now sit at
the bottom of their classes.
- Fix the Manpage feature doc example to use the actual "man" command.
Builds clean across all target frameworks; the 235 tests pass and the
generated page still validates warning-free under groff -man -ww and
mandoc -T lint.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
---------
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-01 13:53:34 -04:00
Matt Nadareski
1da60f1091
Remove CONTRIBUTING due to org-level version
2026-05-16 15:01:49 -04:00
Matt Nadareski
5fd4b8b0a5
Update CONTRIBUTING to be more accurate
2026-05-15 13:05:20 -04:00
Matt Nadareski
2bca1ff744
Add CONTRIBUTING document
2026-05-15 10:59:28 -04:00
Matt Nadareski
8be595bf56
Update gitignore for new VSCode feature
2026-05-15 10:34:14 -04:00
Matt Nadareski
47d067df1c
Add editorconfig, fix issues
2026-01-25 17:14:38 -05:00
Matt Nadareski
90bfcc8fe2
Format GHA definitions
2025-11-17 08:36:23 -05:00
Matt Nadareski
be081c701d
Bump version
1.4.0
2025-11-12 19:49:06 -05:00
Matt Nadareski
66b0e27d4e
Add support for .NET 10
2025-11-11 16:43:21 -05:00
Matt Nadareski
573fe2e160
Update rolling tag
2025-10-26 20:22:42 -04:00
Matt Nadareski
6ad9fa4521
Fix split method in custom help
2025-10-07 12:37:54 -04:00
Matt Nadareski
a261f428f2
Add and allow custom help text
2025-10-07 12:36:00 -04:00
Matt Nadareski
5011331164
Clarify the case where default also has real flags
2025-10-07 12:27:51 -04:00
Matt Nadareski
e257c30892
Clarify help printing with default features
2025-10-07 12:14:18 -04:00
Matt Nadareski
029cfe6dc6
Add optional default feature to CommandSet
2025-10-07 12:13:11 -04:00
Matt Nadareski
f38b8734b5
Simplify the method name
2025-10-07 12:07:41 -04:00
Matt Nadareski
df54b92031
Add AddChildrenFrom method to CommandSet
2025-10-07 12:03:00 -04:00
Matt Nadareski
39acb90dbc
Use All help by default instead of top-level only
2025-10-06 08:50:21 -04:00
Matt Nadareski
43083d35e1
Bump version
1.3.2
2025-10-06 07:21:36 -04:00
Matt Nadareski
fddbfa963d
Directly return result of execution
2025-10-06 07:19:41 -04:00
Matt Nadareski
94ac68e5a0
Handle default help functionality
2025-10-06 07:19:23 -04:00
Matt Nadareski
0c3373e9f0
Basically all cases should output help
2025-10-05 23:26:13 -04:00
Matt Nadareski
f122bf6b6d
Add tests for default parsing
2025-10-05 23:14:02 -04:00
Matt Nadareski
81b300bae6
Add default implementation of parsing in CommandSet
2025-10-05 23:00:20 -04:00
Matt Nadareski
a0576df3ee
Add single-string variants to CommandSet construction
2025-10-05 22:41:18 -04:00
Matt Nadareski
e26a222755
Allow nested searches for feature values
2025-10-05 22:32:16 -04:00
Matt Nadareski
608cdae1d8
Add Get/TryGet for Feature in UserInput
2025-10-05 22:24:25 -04:00
Matt Nadareski
0bb996153a
Add Get/TryGet for Feature in CommandSet
2025-10-05 22:18:48 -04:00
Matt Nadareski
1ecce85a13
Add command set Get and TryGet tests
2025-10-05 21:52:29 -04:00
Matt Nadareski
644527dbfa
Add Get and TryGet to CommandSet
2025-10-05 21:48:12 -04:00
Matt Nadareski
1bd158eba0
Allow controlling detailed help
2025-10-05 20:16:47 -04:00
Matt Nadareski
46d1fb7ca6
Bump version
1.3.1
2025-10-05 20:05:08 -04:00
Matt Nadareski
98617b9961
Fix test for fixed issue
2025-10-05 20:04:04 -04:00
Matt Nadareski
0573e4f180
Fix midpoint printing issue
2025-10-05 20:01:30 -04:00
Matt Nadareski
9ce9d1461e
Add Nuget package link
2025-10-05 18:48:56 -04:00
Matt Nadareski
aa98ac63a2
Bump version
1.3.0
2025-10-05 18:45:59 -04:00
Matt Nadareski
ef13ab612f
Update project file with additional package properties
2025-10-05 18:10:38 -04:00
Matt Nadareski
087e1f5a95
Make constructor parameter name shorter
2025-10-05 18:05:31 -04:00
Matt Nadareski
1b88a9ed60
Long description becomes detailed description
2025-10-05 18:03:47 -04:00
Matt Nadareski
480d66f88b
Add a couple remarks
2025-10-05 16:11:06 -04:00
Matt Nadareski
d2b3725302
Expose a couple of properties and update summaries
2025-10-05 16:03:11 -04:00
Matt Nadareski
814d2d60af
Allow caller to define prefix size instead of assuming
2025-10-05 15:56:49 -04:00
Matt Nadareski
151647dce4
Allow implementers to extend
2025-10-05 15:52:10 -04:00
Matt Nadareski
515eaddfc9
Fix awkward code organization
2025-10-05 15:48:03 -04:00
Matt Nadareski
b5c3b0a88c
Reduce two places to TryGet to avoid double access
2025-10-05 15:35:08 -04:00
Matt Nadareski
0853e2d5ba
Reduce two places to TryGet to avoid double access
2025-10-05 15:28:29 -04:00
Matt Nadareski
5f463a4389
Rename TopLevelFlag to IsTopLevel and clean up wording
2025-10-05 15:22:24 -04:00
Matt Nadareski
23a483af03
Add CommandSet helper to retrieve top level items
2025-10-05 15:19:15 -04:00
Matt Nadareski
6cd5cf947b
Add tests around Windows newlines
2025-10-05 13:06:40 -04:00