//go:build darwin package language import ( "os/exec" "strings" ) func platformLocale() string { out, err := exec.Command("/usr/bin/defaults", "read", "-g", "AppleLocale").Output() if err == nil && strings.TrimSpace(string(out)) != "" { return strings.TrimSpace(string(out)) } out, err = exec.Command("/usr/bin/defaults", "read", "-g", "AppleLanguages").Output() if err == nil { return firstAppleLanguage(string(out)) } return "" } func firstAppleLanguage(raw string) string { raw = strings.TrimSpace(raw) raw = strings.TrimPrefix(raw, "(") raw = strings.TrimSuffix(raw, ")") for _, part := range strings.Split(raw, ",") { part = strings.TrimSpace(part) part = strings.Trim(part, "\"") if part != "" { return part } } return "" }