diff options
| author | ewy <ewy0@protonmail.com> | 2026-06-01 19:37:34 +0200 |
|---|---|---|
| committer | ewy <ewy0@protonmail.com> | 2026-06-01 19:37:34 +0200 |
| commit | 3d46b9546e1ccf131ce4dbcbfc12f6e37fa301ea (patch) | |
| tree | 54bd9343fe51734b7e2377a844065f317bc51cc3 /man/manview/data.go | |
| parent | 46d032cd21b0e8e2c94a32333d3805ec76980cca (diff) | |
default to manpage view for help
Diffstat (limited to 'man/manview/data.go')
| -rw-r--r-- | man/manview/data.go | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/man/manview/data.go b/man/manview/data.go new file mode 100644 index 0000000..7e42fcc --- /dev/null +++ b/man/manview/data.go @@ -0,0 +1,43 @@ +package manview + +import ( + _ "embed" + _ "github.com/ewy1/pik/flags" + "github.com/ewy1/pik/spool" + "github.com/spf13/pflag" + "runtime" + "runtime/debug" + "time" +) + +//go:embed version.txt +var version string + +type ManData struct { + Flags []pflag.Flag + Now string + Revision string + Runtime string + Version string + ExitCodes map[int]*spool.ExitCode +} + +func NewData() ManData { + var flags []pflag.Flag + pflag.Parse() + pflag.VisitAll(func(flag *pflag.Flag) { + flags = append(flags, *flag) + }) + info, ok := debug.ReadBuildInfo() + if !ok { + _, _ = spool.Panic(spool.NoDebugInfo, "could not read debug info\n") + } + return ManData{ + Flags: flags, + Now: time.Now().Format(time.DateTime), + Runtime: runtime.Version(), + Version: version, + Revision: info.Main.Version, + ExitCodes: spool.CodeMap, + } +} |
