Golang CLI Select
Lightweight interactive CLI selection library
Import the package
import "github.com/nexidian/gocliselect"
Usage
Create a new menu, supplying the question as a parameter
menu := gocliselect.NewMenu("Chose a colour")
Add any number of options by calling AddItem()
supplying the display text of the option
as well as the id
menu.AddItem("Red", "red")
menu.AddItem("Blue", "blue")
menu.AddItem("Green", "green")
menu.AddHint("Extra colours:")
menu.AddItem("Yellow", "yellow")
menu.AddItem("Cyan", "cyan")
To display the menu and away the user choice call Display()
choice := menu.Display()
Example
package main
import (
"fmt"
"github.com/nexidian/gocliselect"
)
func main() {
menu := gocliselect.NewMenu("Chose a colour")
menu.AddItem("Red", "red")
menu.AddItem("Blue", "blue")
menu.AddItem("Green", "green")
menu.AddHint("Extra colours:")
menu.AddItem("Yellow", "yellow")
menu.AddItem("Cyan", "cyan")
choice := menu.Display()
fmt.Printf("Choice: %s\n", choice)
}