Jeff King:
I did some digging, and I think the public API is setlocale with a
NULL parameter, like:
printf("%s\n", setlocale(LC_MESSAGES, NULL));
That still will end up like "en_US.UTF-8", though;
And it only yields the highest-priority language, I think.
I couldn't find any standard functions for parsing that. It seems
like it would be pretty straightforward to do so, though.
RFC 5646 is the current specification on language tags, btw.
From my brief reading of rfc2616, that should probably become
"en-us", and any time we add "x-y", we may want to add "x" as a
fallback (that is certainly true for English; I don't know about
other languages with dialects).
Yes, adding the generic fallback is necessary, as "en-US" on the server
matches a client's "en", but not vice versa. So if you request "en-US"
and "de" and the server only has "en-GB" and "de", you'd get the
"de" version.
Debian's website has a nice writeup on the subject:
http://www.debian.org/intro/cn#howtoset
--
\\// Peter - http://www.softwolves.pp.se/
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html