package prompt import ( "bufio" "fmt" "log" "os" "strings" ) var Commands = make(map[string]func(args []string)) func Read() { sc := bufio.NewScanner(os.Stdin) for sc.Scan() { args := strings.Split(sc.Text(), " ") cmd, ok := Commands[args[0]] if !ok { fmt.Println("unknown command") continue } cmd(args[1:]) } if err := sc.Err(); err != nil { log.Println(err) } }