consolez

package
v0.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 13, 2024 License: MIT Imports: 11 Imported by: 0

Documentation

Overview

Package consolez provides various utilities for building CLI tools.

Index

Constants

This section is empty.

Variables

View Source
var (
	IconRocket                     = "\U0001F680"
	IconHighVoltage                = "\U000026A1"
	IconBackhandIndexPointingRight = "\U0001F449"
	IconRunner                     = "\U0001F3C3"
	IconCollision                  = "\U0001F4A5"
)

Known icons.

View Source
var (
	ColorDefault            = color.New(color.Reset)
	ColorHighlight          = color.New(color.Bold)
	ColorSecondaryHighlight = color.New(color.Bold, color.Faint)
	ColorSecondary          = color.New(color.Faint)
	ColorInfo               = color.New(color.FgCyan)
	ColorSuccess            = color.New(color.FgGreen)
	ColorWarning            = color.New(color.FgYellow)
	ColorError              = color.New(color.FgHiRed)
)

Known colors.

View Source
var (
	DefaultCLI = defaultCLI
)

DefaultCLI is a default, shared instance of *CLI.

Functions

func RestoreDefaultCLI added in v0.2.0

func RestoreDefaultCLI()

RestoreDefaultCLI restores the default value of DefaultCLI.

Types

type CLI

type CLI struct {
	// contains filtered or unexported fields
}

CLI provides some utilities for printing messages in CLI tools.

func NewCLI

func NewCLI(options ...CLIOption) *CLI

NewCLI initializes a new *CLI.

func (*CLI) Banner

func (c *CLI) Banner(title, tagLine string)

Banner prints a banner.

func (*CLI) Command

func (c *CLI) Command(cmd string, params ...string)

Command prints a command.

func (*CLI) Error

func (c *CLI) Error(err error, debug bool)

Error prints an error.

func (*CLI) Header

func (c *CLI) Header(format string, a ...any) func()

Header prints a header based on a nesting hierarchy. Always call the returned function to close the scope, for example by deferring it.

func (*CLI) NewTable

func (c *CLI) NewTable(columnHeaders ...any) table.Table

NewTable creates a new table.

func (*CLI) Notice

func (c *CLI) Notice(scope string, highlight string, secondary ...string)

Notice prints a notice.

func (*CLI) Recover

func (c *CLI) Recover(debug bool)

Recover calls *CLI.Error on a recovered panic and exits.

func (*CLI) Tool

func (c *CLI) Tool(toolName string, k *kong.Context)

Tool introduces a command line tool.

func (*CLI) WithHeader

func (c *CLI) WithHeader(format string, a []any, f func())

WithHeader calls *CLI.Header and runs f() within its scope.

type CLIOption

type CLIOption interface {
	Apply(*CLI)
}

CLIOption describes a *CLI option.

type CLIOptionFunc

type CLIOptionFunc func(*CLI)

CLIOptionFunc describes a *CLI option.

func CLIExit

func CLIExit(exit func(code int)) CLIOptionFunc

CLIExit returns a CLIOptionFunc that allows to provide an alternative implementation for os.Exit.

func (CLIOptionFunc) Apply

func (f CLIOptionFunc) Apply(c *CLI)

Apply implements the CLIOption interface.

type Coverage

type Coverage struct {
	Packages []*gocov.Package
}

Coverage describes collected coverage.

type CoveragePrinter

type CoveragePrinter interface {
	Print(coverage *Coverage)
}

CoveragePrinter implements a printer for test coverage information.

func NewCoveragePrinter

func NewCoveragePrinter() CoveragePrinter

NewCoveragePrinter initializes a new CoveragePrinter.

type GoTestPrinter

type GoTestPrinter interface {
	PrintLine(line string)
	PrintDone()
}

GoTestPrinter implements a printer for "go test" output.

func NewGoTestPrinter

func NewGoTestPrinter() GoTestPrinter

NewGoTestPrinter initializes a new GoTestPrinter.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL