29 lines
910 B
Go
29 lines
910 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
prompt "git.tcp.direct/tcp.direct/go-prompt"
|
|
)
|
|
|
|
func completer(in prompt.Document) []prompt.Suggest {
|
|
s := []prompt.Suggest{
|
|
{Text: "users", Description: "Store the username and age"},
|
|
{Text: "articles", Description: "Store the article text posted by user"},
|
|
{Text: "comments", Description: "Store the text commented to articles"},
|
|
{Text: "groups", Description: "Combine users with specific rules"},
|
|
}
|
|
return prompt.FilterHasPrefix(s, in.GetWordBeforeCursor(), true)
|
|
}
|
|
|
|
func main() {
|
|
in := prompt.Input(">>> ", completer,
|
|
prompt.OptionTitle("sql-prompt"),
|
|
prompt.OptionHistory([]string{"SELECT * FROM users;"}),
|
|
prompt.OptionPrefixTextColor(prompt.Yellow),
|
|
prompt.OptionPreviewSuggestionTextColor(prompt.Blue),
|
|
prompt.OptionSelectedSuggestionBGColor(prompt.LightGray),
|
|
prompt.OptionSuggestionBGColor(prompt.DarkGray))
|
|
fmt.Println("Your input: " + in)
|
|
}
|