![]() |
Languages That Need Special Care |
Most languages are unambiguous: they have one name and one ID, and they are written in a single script. However, a few languages are written in several scripts, have several names, or have several variants. They are:
When the script or the variant matters, use a language ID that contains the script (e.g., sr-Latn) or the country (e.g., sr-RS). To get the script part into the output file names, use the <multi-id> or <script-id> item in the output file pattern.
The official script of Azerbaijani is Latin, but the Cyrillic script is still used, and the Arabic script is used in Iran.
| Language | ID | Notes |
|---|---|---|
| Azerbaijani | az | Latin script. Soluling uses this for Azerbaijani (Latin). |
| Azerbaijani (Latin) | az-Latn | |
| Azerbaijani (Cyrillic) | az-Cyrl | |
| Azerbaijani (Arabic) | az-Arab |
Soluling supports all scripts of Azerbaijani. The language dialog contains the following Azerbaijani languages:

These four languages are closely related and mutually intelligible. They were previously called Serbo-Croatian, but today each country uses its own name for the language. They are written in the Latin script, the Cyrillic script, or both.
| Language | Latin | Cyrillic |
|---|---|---|
| Croatian | Yes | - |
| Bosnian | Yes | Yes |
| Montenegrin | Yes | Yes |
| Serbian | Yes | Yes |
The default script is in bold.
The following table contains the language IDs:
| Language | ID | Notes |
|---|---|---|
| Croatian | hr | Latin script |
| Bosnian | bs | Latin script |
| Bosnian (Latin) | bs-Latn | |
| Bosnian (Cyrillic) | bs-Cyrl | |
| Montenegrin | cnr | Latin script |
| Montenegrin (Latin) | cnr-Latn | |
| Montenegrin (Cyrillic) | cnr-Cyrl | |
| Serbian | sr | Cyrillic script |
| Serbian (Cyrillic) | sr-Cyrl | |
| Serbian (Latin) | sr-Latn |
Soluling supports both the Latin and the Cyrillic script of Bosnian, Montenegrin, and Serbian. The language dialog contains the following Bosnian, Serbian, and Montenegrin languages:
![]()
![]()
![]()
Windows uses the same primary language ID (26, 0x1A) for Croatian, Bosnian, and Serbian. This causes trouble if you select a country-neutral language (e.g., hr instead of hr-HR) and your application uses Windows language IDs instead of IETF language tags: hr, bs, and sr all map to the same Windows language ID, 26. To avoid this, use country-specific languages, such as hr-HR, bs-BA, and sr-RS.
There are two written forms of Chinese: Simplified Chinese and Traditional Chinese.
| Version | Country or region |
|---|---|
| Simplified Chinese | China |
| Simplified Chinese | Singapore |
| Traditional Chinese | Hong Kong SAR |
| Traditional Chinese | Macao SAR |
| Traditional Chinese | Taiwan |
The following table contains the Chinese language IDs:
| Language | ID | Notes |
|---|---|---|
| Chinese | zh | Can mean either form, but most often means Simplified Chinese. Soluling uses this for Simplified Chinese. |
| Simplified Chinese | zh-Hans | |
| Traditional Chinese | zh-Hant |
Soluling supports both forms of Chinese. The language dialog contains the following Chinese languages:
![]()
Inuktitut is written in two scripts in Canada: Canadian Aboriginal syllabics and Latin.
| Language | ID | Notes |
|---|---|---|
| Inuktitut (Syllabics) | iu-Cans | |
| Inuktitut (Latin) | iu-Latn |
Because the plain iu does not tell the script, use an ID that contains the script.
![]()
Mongolian is written in the Cyrillic script in Mongolia and in the traditional Mongolian script in China.
| Language | ID | Notes |
|---|---|---|
| Mongolian | mn | Cyrillic script |
| Mongolian (Cyrillic) | mn-Cyrl | |
| Mongolian (Traditional Mongolian) | mn-Mong | Used in China (mn-Mong-CN). |
![]()
There are two written forms of Norwegian: Bokmål and Nynorsk. Bokmål is the most widely used, but Nynorsk also has official status. The language IDs are:
| Language | ID | Description |
|---|---|---|
| Norwegian | no | Can mean either form, but most often means Bokmål. |
| Bokmål | nb | |
| Nynorsk | nn |
Soluling supports all three Norwegian language IDs. The language dialog contains the following Norwegian languages:

Like Serbo-Croatian, Bokmål and Nynorsk share the same Windows primary language ID (20, 0x14). If your application uses Windows language IDs, use the country-specific languages nb-NO and nn-NO. With .NET 2.0 and 3.x, Soluling adds the country automatically (nb-NO and nn-NO) to the .NET culture name.
Punjabi is written in the Gurmukhi script in India and in the Shahmukhi (Arabic) script in Pakistan.
| Language | ID | Notes |
|---|---|---|
| Punjabi | pa | Gurmukhi script (India) |
| Punjabi (Arabic) | pa-Arab | Shahmukhi script (Pakistan, pa-Arab-PK) |
![]()
There is no single Sami language but several Sami languages, some of which are mutually unintelligible.
| Language | ID | Countries | Description |
|---|---|---|---|
| Inari Sami | smn | Finland | |
| Lule Sami | smj | Norway, Sweden | |
| Northern Sami | se | Finland, Norway, Sweden | The most widely used Sami language. |
| Skolt Sami | sms | Finland | |
| Southern Sami | sma | Norway, Sweden |
Soluling supports all the major Sami languages. The language dialog contains the following Sami languages:

The official script of Uzbek is Latin, but the Cyrillic script is still used, and the Arabic script is used in Afghanistan.
| Language | ID | Notes |
|---|---|---|
| Uzbek | uz | Latin script. Soluling uses this for Uzbek (Latin). |
| Uzbek (Latin) | uz-Latn | |
| Uzbek (Cyrillic) | uz-Cyrl | |
| Uzbek (Arabic) | uz-Arab |
Soluling supports Latin, Cyrillic, and Arabic Uzbek. The language dialog contains the following Uzbek languages:
