En las aplicaciones por Internet cada vez es más popular el soportar varios idiomas a la vez. Existe una reglamentación el ISO-639 que regula el idioma. Tiene que ser dos dígitos y en minúsculas.
La lista está en : http://www.ics.uci.edu/pub/ietf/http/related/iso639.txt
Existe otro reglamento el ISO-3166 que regula los países. Tienen que ser dos dígitos y en mayúsculas.
La lista está en : http://www.chemie.fu-berlin.de/diverse/doc/ISO_3166.html
Para indicar un idioma y un país en concreto se unen los dos dígitos en minusculas del idioma y los dos dígitos del país en mayúsculas unidos por un guión _.
Varios ejemplos :
- «es_ES» Español es España.
- «ca_ES» Catalán en España.
- ‘es_MX» Español en Mexico.
Todo esto lo explico porque cada vez más se implementan los idiomas en lenguajes de programación orientados a Objetos como el JAVA , C++ y el PHP, que pueden tener la clase locale para gestionar los idiomas, dicha clase se regula según la reglamentación ISO-639 e ISO-3166.
Les dejo abajo todas las posibles combinaciones que existen entre los idiomas y los paises :
| Value | Description | Value | Description | |
| ar | Arabic | fi | Finnish | |
| ar_AE | Arabic (United Arab Emirates) | fi_FI | Finnish (Finland) | |
| ar_BH | Arabic (Bahrain) | fr | French | |
| ar_DZ | Arabic (Algeria) | fr_BE | French (Belgium) | |
| ar_EG | Arabic (Egypt) | fr_CA | French (Canada) | |
| ar_IQ | Arabic (Iraq) | fr_CH | French (Switzerland) | |
| ar_JO | Arabic (Jordan) | fr_FR | French (France) | |
| ar_KW | Arabic (Kuwait) | fr_LU | French (Luxembourg) | |
| ar_LB | Arabic (Lebanon) | hi_IN | Hindi (India) | |
| ar_LY | Arabic (Libya) | hr | Croatian | |
| ar_MA | Arabic (Morocco) | hr_HR | Croatian (Croatia) | |
| ar_OM | Arabic (Oman) | hu | Hungarian | |
| ar_QA | Arabic (Qatar) | hu_HU | Hungarian (Hungary) | |
| ar_SA | Arabic (Saudi Arabia) | id | Indonesian | |
| ar_SD | Arabic (Sudan) | is | Icelandic | |
| ar_SY | Arabic (Syria) | is_IS | Icelandic (Iceland) | |
| ar_TN | Arabic (Tunisia) | it | Italian | |
| ar_YE | Arabic (Yemen) | it_CH | Italian (Switzerland) | |
| be | Belarusian | it_IT | Italian (Italy) | |
| be_BY | Belarusian (Belarus) | iw | Hebrew | |
| bg | Bulgarian | iw_IL | Hebrew (Israel) | |
| bg_BG | Bulgarian (Bulgaria) | ja | Japanese | |
| ca | Catalan | ja_JP | Japanese (Japan) | |
| ca_ES | Catalan (Spain) | ko | Korean | |
| cs | Czech | ko_KR | Korean (Korea) | |
| cs_CZ | Czech (Czech Republic) | lt | Lithuanian | |
| da | Danish | lt_LT | Lithuanian (Lithuania) | |
| da_DK | Danish (Denmark) | lv | Latvian | |
| de | German | lv_LV | Latvian (Latvia) | |
| de_AT | German (Austria) | mk | Macedonian | |
| de_CH | German (Switzerland) | mk_MK | Macedonian (Macedonia) | |
| de_DE | German (Germany) | nl | Dutch | |
| de_LU | German (Luxembourg) | nl_BE | Dutch (Belgium) | |
| el | Greek | nl_NL | Dutch (Netherlands) | |
| el_GR | Greek (Greece) | no | Norwegian | |
| en | English | no_NO | Norwegian (Norway) | |
| en_AT | English (Austria) | no_NO_NY | Norwegian (Norway,Nynorsk) | |
| en_AU | English (Australia) | pl | Polish | |
| en_BR | English (Brazil) | pl_PL | Polish (Poland) | |
| en_CA | English (Canada) | pt | Portuguese | |
| en_CH | English (Switzerland) | pt_BR | Portuguese (Brazil) | |
| en_DE | English (Germany) | pt_PT | Portuguese (Portugal) | |
| en_DK | English (Demark) | ro | Romanian | |
| en_ES | English (Spain) | ro_RO | Romanian (Romania) | |
| en_FI | English (Finland) | ru | Russian | |
| en_FR | English (France) | ru_RU | Russian (Russia) | |
| en_GB | English (Great Britain) | sk | Slovak | |
| en_HK | English (Hong Kong) | sk_SK | Slovak (Slovakia) | |
| en_IE | English (Ireland) | sl | Slovenian | |
| en_IN | English (India) | sl_SI | Slovenian (Slovenia) | |
| en_IT | English (Italy) | sq | Albanian | |
| en_JP | English (Japan) | sq_AL | Albanian (Albania) | |
| en_KR | English (Korea) | sr | Serbian | |
| en_MX | English (Mexico) | sv | Swedish | |
| en_NL | English (Netherlands) | sv_SE | Swedish (Sweden) | |
| en_NO | English (Norway) | th | Thai | |
| en_NZ | English (New Zealand) | th_TH | Thai (Thailand) | |
| en_SE | English (Sweden) | tr | Turkish | |
| en_SG | English (Singapore) | tr_TR | Turkish (Turkey) | |
| en_TW | English (Taiwan) | uk | Ukrainian | |
| en_US | English (United States) | uk_UA | Ukrainian (Ukraine) | |
| en_ZA | English (South Africa) | vi | Vietnamese | |
| es | Spanish | vi_VN | Vietnamese (Vietnam) | |
| es_AR | Spanish (Argentina) | zh | Chinese | |
| es_BO | Spanish (Bolivia) | zh_CN | Chinese (China) | |
| es_CL | Spanish (Chile) | zh_HK | Chinese (Hong Kong) | |
| es_CO | Spanish (Colombia) | zh_TW | Chinese (Taiwan) | |
| es_CR | Spanish (Costa Rica) | |||
| es_DO | Spanish (Dominican) | |||
| es_EC | Spanish (Ecuador) | |||
| es_ES | Spanish (Spain) | |||
| es_GT | Spanish (Guatemala) | |||
| es_HN | Spanish (Honduras) | |||
| es_MX | Spanish (Mexico) | |||
| es_NI | Spanish (Nicaragua) | |||
| es_PA | Spanish (Panama) | |||
| es_PE | Spanish (Peru) | |||
| es_PR | Spanish (Puerto Rico) | |||
| es_PY | Spanish (Paraguay) | |||
| es_SV | Spanish (El Salvador) | |||
| es_UY | Spanish (Uruguay) | |||
| es_VE | Spanish (Venezuela) | |||
| et | Estonian | |||
| et_EE | Estonian (Estonia) |