For 12 år siden, skrev jeg et lite notat om bruk av språkkoder i Norge. Jeg ble nettopp minnet på dette da jeg fikk spørsmål om notatet fortsatt var aktuelt, og tenkte det var greit å repetere hva som fortsatt gjelder. Det jeg skrev da er fortsatt like aktuelt.
Når en velger språk i programmer på unix, så velger en blant mange språkkoder. For språk i Norge anbefales følgende språkkoder (anbefalt locale i parantes):
- nb (nb_NO)
- Bokmål i Norge
- nn (nn_NO)
- Nynorsk i Norge
- se (se_NO)
- Nordsamisk i Norge
Alle programmer som bruker andre koder bør endres.
Språkkoden bør brukes når .po-filer navngis og installeres. Dette er ikke det samme som locale-koden. For Norsk Bokmål, så bør filene være navngitt nb.po, mens locale (LANG) bør være nb_NO.
Hvis vi ikke får standardisert de kodene i alle programmene med norske oversettelser, så er det umulig å gi LANG-variablen ett innhold som fungerer for alle programmer.
Språkkodene er de offisielle kodene fra ISO 639, og bruken av dem i forbindelse med POSIX localer er standardisert i RFC 3066 og ISO 15897. Denne anbefalingen er i tråd med de angitte standardene.
Følgende koder er eller har vært i bruk som locale-verdier for "norske" språk. Disse bør unngås, og erstattes når de oppdages:
norwegian | -> nb_NO |
bokmål | -> nb_NO |
bokmal | -> nb_NO |
nynorsk | -> nn_NO |
no | -> nb_NO |
no_NO | -> nb_NO |
no_NY | -> nn_NO |
sme_NO | -> se_NO |
Merk at når det gjelder de samiske språkene, at se_NO i praksis henviser til nordsamisk i Norge, mens f.eks. smj_NO henviser til lulesamisk. Dette notatet er dog ikke ment å gi råd rundt samiske språkkoder, der gjør Divvun-prosjektet en bedre jobb.
Referanser:
- RFC 3066 - Tags for the Identification of Languages (Erstatter RFC 1766)
- ISO 639 - Codes for the Representation of Names of Languages
- ISO DTR 14652 - locale-standard Specification method for cultural conventions
- ISO 15897: Registration procedures for cultural elements (cultural registry), (nytt draft)
- ISO/IEC JTC1/SC22/WG20 - Gruppen for i18n-standardisering i ISO