diff options
author | joop <Joop Kiefte> | 2022-04-02 06:28:08 +0100 |
---|---|---|
committer | joop <Joop Kiefte> | 2022-04-02 06:28:08 +0100 |
commit | baca55e8ceea2460ecd24e5eb30f132dbe0fecfa (patch) | |
tree | fd8f1fe47cef54274baafef9831bef63061bef41 | |
parent | 8b0e3e29e6af32b8bd1be7f3f34c92e66d9d0e82 (diff) |
Make output fully sorted
-rw-r--r-- | main.go | 28 |
1 files changed, 19 insertions, 9 deletions
@@ -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 } |