From 9bb85bd294e1d51c6b64f1840f47a2d7f0652801 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sun, 26 Nov 2023 10:10:50 +0530 Subject: [PATCH] ask kitten: Better error message when choice letter is not present in choice text. Fixes #6855 --- kittens/ask/choices.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/kittens/ask/choices.go b/kittens/ask/choices.go index 6d6c39b84..86bd320d5 100644 --- a/kittens/ask/choices.go +++ b/kittens/ask/choices.go @@ -93,6 +93,9 @@ func GetChoices(o *Options) (response string, err error) { } letter = strings.ToLower(letter) idx := strings.Index(strings.ToLower(text), letter) + if idx < 0 { + return "", fmt.Errorf("The choice letter %#v is not present in the choice text: %#v", letter, text) + } idx = len([]rune(strings.ToLower(text)[:idx])) allowed.Add(letter) c := Choice{text: text, idx: idx, color: color, letter: letter}