Representing Languages by Countries Flags is like going for a walk in a minefield.
Many Languages are spoken in several countries ( which flag do you pick for english ? US, british, irish, see: http://en.wikipedia.org/wiki/List_of_official_languages ) and many countries have multiple official languages (in Europe there is a lot of examples like switzerland which has: Deutsch, francais, italiano & rumantsch) so it doesn't work either way.
It's not only about beeing politically correct it's also semanticaly incorrect, as a flag is designed to represent a country, not a language.
I remember this discussion from other FOSS projects, i.e. Wikipedia or the GNOME Project, where the conclusion was to use standards, which in that case is described sufficiently by ISO 639 standard: http://en.wikipedia.org/wiki/List_of_ISO_639-2_codes
There is 2 Letter and 3 Letter abreviations which use standard LATIN characters and for longer representation the Languages Native name should be used, as implemented in Wikipedia, for Links to different languages versions of an article.
As a graphical representation I would suggest to display a little speech bubble with either 2 or 3 characters Abbreviation of the ISO 639 codes (or the shortest of both) inside the bubble.
If enough space is available it would be better to have the long native language representation as used in wikipedia. One Accesibility advantage is, that people can use type to search to find the link to their language and languages can be output through text to speech too.
thanks for your consideration and feedback!
Comments
Comment #1
Freso commentedThe (long) language names are what is used by default; this module simply implements an option for those who wish to use icons as a visual guide/clue for visitors. A lot of people are happy about using flags for language identity, but it is by no means forced on them. (See http://scots.freso.dk/ for an example of a site that doesn't use the default Language Icons icons (even if it is still using flags).)
Using icons with the language code instead of a flag would indeed be a more neutral way, but it would also be a way that a lot of people don't know how to deal with! How many people not dealing with i18n/l10n issues know what "en", "da", "de", "nl", "gl", etc. stand for? And those aren't the most cryptic ones. However, if this is the way you wish to go, this module doesn't stop you from doing just that. :)