Resolve flag aliases in failed command routes

This commit is contained in:
2026-10-26 14:33:31 +00:00
parent de2266af75
commit 135d8da2b9
5 changed files with 80 additions and 12 deletions

View File

@@ -10,6 +10,7 @@ import (
internalcobra "gitea.maximumdirect.net/eric/CommandKit/internal/cobra"
commandmeta "gitea.maximumdirect.net/eric/CommandKit/internal/commandmeta"
"gitea.maximumdirect.net/eric/CommandKit/internal/commandpath"
)
// Execute parses and dispatches one invocation. args excludes the executable
@@ -149,6 +150,11 @@ func (current *execution) prepareSession() {
options.FlagAliases = current.snapshot.flagAliases[current.route.canonicalPath.Key()].neutralRecords()
case routeDiscovery:
options.FlagAliases = current.snapshot.discoveryFlags[current.route.discoveryPath.Key()].neutralRecords()
default:
snapshot := current.snapshot
options.FlagAliasesForPath = func(path []string) []commandmeta.FlagAlias {
return snapshot.flagAliases[commandpath.FromTokens(path).Key()].neutralRecords()
}
}
current.session = internalcobra.Prepare(current.snapshot.metadata, options)
}