/gocliselect

Lightweight menu selection library for CLI choices

Primary LanguageGoMIT LicenseMIT

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.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.AddItem("Yellow", "yellow")
    menu.AddItem("Cyan", "cyan")

    choice := menu.Display()

    fmt.Printf("Choice: %s\n", choice)
}