Documentation
¶
Overview ¶
Package terminal provides methods for working with user input
Index ¶
- Variables
- func AddHistory(data string)
- func PrintActionMessage(message string)
- func PrintActionStatus(status int)
- func PrintErrorMessage(message string, args ...interface{})
- func PrintWarnMessage(message string, args ...interface{})
- func ReadAnswer(title string, defaultAnswers ...string) (bool, error)
- func ReadPassword(title string, nonEmpty bool) (string, error)
- func ReadUI(title string, nonEmpty bool) (string, error)
- func SetCompletionHandler(h func(input string) []string)
- func SetHintHandler(h func(input string) string)
Examples ¶
Constants ¶
This section is empty.
Variables ¶
var ErrKillSignal = linenoise.ErrKillSignal
ErrKillSignal is error type when user cancel input
var MaskSymbol = "*"
MaskSymbol is symbol used for masking passwords
var MaskSymbolColorTag = ""
MaskSymbolColorTag is fmtc color tag used for MaskSymbol output
var Prompt = "> "
Prompt is prompt string
Functions ¶
func PrintActionMessage ¶
func PrintActionMessage(message string)
PrintActionMessage prints message about action currently in progress
Example ¶
statusOk := true
PrintActionMessage("Starting service my-service")
switch statusOk {
case true:
PrintActionStatus(0) // Print OK
case false:
PrintActionStatus(1) // Print ERROR
}
func PrintActionStatus ¶
func PrintActionStatus(status int)
PrintActionStatus prints message with action execution status
Example ¶
statusOk := true
PrintActionMessage("Starting service my-service")
switch statusOk {
case true:
PrintActionStatus(0) // Print OK
case false:
PrintActionStatus(1) // Print ERROR
}
func PrintErrorMessage ¶
func PrintErrorMessage(message string, args ...interface{})
PrintErrorMessage prints error message
Example ¶
// Print red text to stderr
PrintErrorMessage("Error while sending data")
func PrintWarnMessage ¶
func PrintWarnMessage(message string, args ...interface{})
PrintWarnMessage prints warning message
Example ¶
// Print yellow text to stderr
PrintWarnMessage("Warning file is not found")
func ReadAnswer ¶
ReadAnswer reads user answer for yes/no question
Example ¶
// If the user doesn't enter any value, we will use the default
// value (Y in this case)
ok, err := ReadAnswer("Remove this file?", "Y")
if !ok || err != nil {
return
}
if ok {
fmt.Println("File removed")
}
func ReadPassword ¶
ReadPassword reads password or some private input which will be hidden after pressing Enter
Example ¶
Prompt = "› "
MaskSymbol = "•"
MaskSymbolColorTag = "{s}"
// User must enter password
input, err := ReadUI("Please enter password", true)
if err != nil {
fmt.Printf("Error: %v", err)
}
fmt.Printf("User password: %s\v", input)
func ReadUI ¶
ReadUI reads user input
Example ¶
// User must enter name
input, err := ReadUI("Please enter user name", true)
if err != nil {
fmt.Printf("Error: %v", err)
}
fmt.Printf("User name: %s\v", input)
// You can read user input without providing any title
fmt.Println("Please enter user name")
input, err = ReadUI("", true)
if err != nil {
fmt.Printf("Error: %v", err)
}
fmt.Printf("User name: %s\v", input)
func SetCompletionHandler ¶
SetCompletionHandler adds function for autocompletion
func SetHintHandler ¶
SetHintHandler adds function for input hints
Types ¶
This section is empty.