From baca55e8ceea2460ecd24e5eb30f132dbe0fecfa Mon Sep 17 00:00:00 2001 From: joop Date: Sat, 2 Apr 2022 06:28:08 +0100 Subject: Make output fully sorted --- main.go | 28 +++++++++++++++++++--------- 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/main.go b/main.go index 0de1cea..2482442 100644 --- a/main.go +++ b/main.go @@ -128,10 +128,13 @@ func ReadLangCSV() error { language.Rtl, _ = strconv.ParseBool(lang[6]) Languages[language.Id] = language } - fmt.Println("Number of languages:", len(Languages)) - for _, language := range Languages { - fmt.Print(language.Iso + " - ") + fmt.Print("Available languages: ") + var langs []string + for _, lang := range Languages { + langs = append(langs, lang.English+" ("+lang.Iso+")") } + sort.Strings(langs) + fmt.Println(strings.Join(langs, ", ")) return nil } @@ -173,11 +176,20 @@ func WriteCodeList(codeList map[int]string) error { invertedCodeList[code] = append(invertedCodeList[code], prayerID) } - for code, prayerIDs := range invertedCodeList { - line := []string{code} - for _, prayerID := range prayerIDs { + var codes []string + for code := range invertedCodeList { + codes = append(codes, code) + } + + sort.Strings(codes) + + for _, code := range codes { + var line []string + for _, prayerID := range invertedCodeList[code] { line = append(line, strconv.Itoa(prayerID)) } + sort.Strings(line) + line = append([]string{code}, line...) err := writer.Write(line) if err != nil { return err @@ -188,9 +200,6 @@ func WriteCodeList(codeList map[int]string) error { } func AskLanguages(pr string) []Language { - // Ask "Which languages do you want to complete?" - // The answer is a list of language codes that must be converted to numbers - // using the conversion from lang.csv in Languages fmt.Print(pr) var languages []string for { @@ -233,6 +242,7 @@ func ReadPrayers(lang []Language, codep bool) []Prayer { prayers = append(prayers, prayer) } } + fmt.Println("done") } return prayers } -- cgit v1.2.3-70-g09d2