Documentation ¶
Index ¶
- func IsTerminalReader(r io.Reader) bool
- func IsTerminalWriter(w io.Writer) bool
- func NewMaxWidthWriter(w io.Writer, maxWidth uint) io.Writer
- func NewPunchCardWriter(w io.Writer) io.Writer
- func NewResponsiveWriter(w io.Writer) io.Writer
- func NewWordWrapWriter(w io.Writer, limit uint) io.Writer
- func PromptForBool(r io.Reader, w io.Writer, format string, a ...interface{}) bool
- func PromptForPasswordString(r io.Reader, w io.Writer, format string, a ...interface{}) string
- func PromptForString(r io.Reader, w io.Writer, format string, a ...interface{}) string
- func PromptForStringWithDefault(r io.Reader, w io.Writer, def string, format string, a ...interface{}) string
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsTerminalReader ¶
IsTerminalReader returns whether the passed io.Reader is a terminal or not
func IsTerminalWriter ¶
IsTerminalWriter returns whether the passed io.Writer is a terminal or not
func NewMaxWidthWriter ¶
NewMaxWidthWriter is a Writer that supports a limit of characters on every line, but doesn't do any word wrapping automatically.
func NewPunchCardWriter ¶
NewPunchCardWriter is a NewWordWrapWriter that limits the line width to 80 columns.
func NewResponsiveWriter ¶
NewResponsiveWriter creates a Writer that detects the column width of the terminal we are in, and adjusts every line width to fit and use recommended terminal sizes for better readability. Does proper word wrapping automatically.
if terminal width >= 120 columns use 120 columns if terminal width >= 100 columns use 100 columns if terminal width >= 80 columns use 80 columns
In case we're not in a terminal or if it's smaller than 80 columns width, doesn't do any wrapping.
func NewWordWrapWriter ¶
NewWordWrapWriter is a Writer that supports a limit of characters on every line and does auto word wrapping that respects that limit.
func PromptForBool ¶
PromptForBool prompts for user input of a boolean value. The accepted values are:
yes, y, true, t, 1 (not case sensitive) no, n, false, f, 0 (not case sensitive)
A valid answer is mandatory so it will keep asking until an answer is provided.
func PromptForPasswordString ¶
PromptForPasswordString prompts for user input by disabling echo in terminal, useful for password prompt.
func PromptForString ¶
PromptForString takes an io.Reader and prompts for user input if it's a terminal, returning the result.
Types ¶
This section is empty.