aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2025-02-23 01:17:57 +0900
committerOphestra <cat@gensokyo.uk>2025-02-23 01:17:57 +0900
commit416d93e8802dc4f42ce814edf874c79e2682af58 (patch)
tree119b758f8f0f582404f9d0dc11a5a95f693599e9
parent312753924be1109a22269ebde81fa244ef9b6379 (diff)
command: expose print help
This is useful for custom help commands. Signed-off-by: Ophestra <cat@gensokyo.uk>
-rw-r--r--command/command.go3
-rw-r--r--command/help.go2
2 files changed, 5 insertions, 0 deletions
diff --git a/command/command.go b/command/command.go
index d0cab36a..525dde3d 100644
--- a/command/command.go
+++ b/command/command.go
@@ -39,6 +39,9 @@ type (
// NewCommand returns a new subcommand with direct command handling.
NewCommand(name, usage string, f HandlerFunc) (sub Flag[Node])
+ // PrintHelp prints a help message to the configured writer.
+ PrintHelp()
+
Flag[T]
}
)
diff --git a/command/help.go b/command/help.go
index 0bcc15f1..a3735406 100644
--- a/command/help.go
+++ b/command/help.go
@@ -10,6 +10,8 @@ import (
var ErrHelp = errors.New("help requested")
+func (n *node) PrintHelp() { _ = n.writeHelp() }
+
func (n *node) writeHelp() error {
if _, err := fmt.Fprintf(n.out,
"\nUsage:\t%s [-h | --help]%s COMMAND [OPTIONS]\n",