Talen
Talen
Het pakket bevat 185+ talen met ISO 639-1-codes.
Taaleigenschappen
Elke taal heeft de volgende velden:
| Veld | Beschrijving |
|---|---|
code | ISO 639-1-taalcode (bijv. "en") |
nativeName | Naam in de taal zelf (bijv. "English") |
dialects | Lijst van taaldialecten |
defaultFlagCode | Landcode voor een representatieve vlag |
Elk dialect heeft:
| Veld | Beschrijving |
|---|---|
code | Dialectcode |
nativeName | Oorspronkelijke naam van het dialect |
flagCode | Landcode voor de vlag van het dialect |
Opzoeken op code
lang, ok := intl.LanguageByCode("en")
if ok {
fmt.Println(lang.NativeName) // English
fmt.Println(lang.Code) // en
}Alle talen weergeven
allLanguages := intl.AllLanguages()
fmt.Println(len(allLanguages)) // 185Dialecten
Talen kunnen dialecten hebben die regionale variaties vertegenwoordigen.
lang, ok := intl.LanguageByCode("en")
if ok {
for _, d := range lang.Dialects {
fmt.Printf("%s (%s)\n", d.NativeName, d.FlagCode)
}
}Taalvlaggen
Talen kunnen een representatieve vlag hebben op basis van hun standaard vlagcode.
lang, ok := intl.LanguageByCode("fr")
if ok && lang.DefaultFlagCode != "" {
flag, flagOk := intl.GetFlag(lang.DefaultFlagCode)
if flagOk {
fmt.Println(len(flag)) // lengte van SVG-string
}
}Typeveilige taalcodes
code := intl.LanguageFR
lang := code.Language()
fmt.Println(lang.NativeName) // Fran??ais