1 // Copyright 2017 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file.
10 "golang.org/x/text/language"
11 "golang.org/x/text/message"
15 // languages supported by this service:
16 matcher := language.NewMatcher(message.DefaultCatalog.Languages())
18 http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
19 lang, _ := r.Cookie("lang")
20 accept := r.Header.Get("Accept-Language")
22 tag, _ := language.MatchStrings(matcher, lang.String(), accept, fallback)
24 p := message.NewPrinter(tag)
26 p.Fprintln(w, "User language is", tag)
30 func ExamplePrinter_numbers() {
31 for _, lang := range []string{"en", "de", "de-CH", "fr", "bn"} {
32 p := message.NewPrinter(language.Make(lang))
33 p.Printf("%-6s %g\n", lang, 123456.78)