Wikiup:Technik/MediaWiki/Sprachen
Diese Projektseite stellt Informationen zur Lokalisierung innerhalb der MediaWiki-Software zusammen, die Sprachcodes oder Sprachnamen betreffen.
Sprachcodes
Grundsätzlich folgen die Sprachcodes der ISO 639.
Einsatzgebiete:
- Für Wiki-Projekte.
- Wikipedia:Sprachen – alle Sprachversionen von Wikipedia-Projekten.
- Für die Sprache der Benutzeroberfläche.
- Für den Inhalt ganzer Seiten.
- Anfang 2017 wurde ein Sprachcode pro Einzelseite (für mehrsprachige/zentrale Projekte) definiert.
- Parserfunktion:
{{PAGELANGUAGE}}
- Lua:
mw.title.getCurrentTitle().pageLanguage
- Mit Attribut
lang
von einzelnen HTML-Elementen in der Seite.
Dazu gehören in der ISO 3166 vorgesehene Erweiterungen für landesspezifische Sprachvarianten. Bekannt sind zu den Wikis:
de-AT de-CH
en-CA en-GB en-US
kk-CN kk-KZ kk-TR
ko-KP
nds-NL
pt-BR
zh-CN zh-HK zh-MO zh-MY zh-SG zh-TW
Für Schriftsysteme wird die ISO 15924 angewendet. Sie legt Vier-Buchstaben-Codes fest, namentlich:
Latn
– LateinischCyrl
– Kyrillisch (modern)Grek
– GriechischArab
– ArabischHans
– Han (simplified)Hant
– Han (traditional)Jpan
– Han + Hiragana + KatakanaDeva
– Devanagari
Weitere Details unter Schriftsysteme.
Über ISO 639 hinaus gibt es sinngemäße Erweiterungen:[1]
- Eigene Sprachdefinitionen:
simple
– Einfaches Englischtokipona
- Eigene Sprachvarianten:
be-tarask
– Weißrussisch (Taraschkewiza) – lokalisierter Projektbezeichnerbe-x-old
– Weißrussisch (Taraschkewiza) – erster Projektbezeichnerlij-mc
- Monegassischpap-aw
- Papiamentu auf Arubazh-classical
– klassisches Chinesischzh-min-nan
– Min Nanzh-yue
– Kantonesisch
- Eigene Sprachversionen:
de-formal
– Formelles Deutsch (Anrede „Sie“)es-formal
hu-formal
nl-informal
zh-classical
- Eigene Sprachcodes:
bat-smg
– Schemaitisch (eigentlichsgs
)cbk-zam
– Chavacano / Chabacanofiu-vro
– Võro (eigentlichvro
);fiu
: „Finno-ugrisch“map-bms
– Banyumasan (Javanisch)roa-rup
– Aromunisch (eigentlichrup
);roa
: „Romanische Sprachen“roa-tara
– Tarandíne;roa
: „Romanische Sprachen“
- Alternative Schriftsysteme:
ady-Cyrl
aeb-Arab aeb-Latn
ban-Bali
bbc-Latn
crh-Cyrl crh-Latn
gan-Hans gan-Hant
gom-Deva gom-Latn
hif-Latn
ike-Cans ike-Latn
ja-Hani
,ja-Hira
,ja-Hrkt
,ja-Kana
kbd-Cyrl
kk-Arab kk-Cyrl
ks-Arab ks-Deva
ku-Arab ku-Latn
ms-Arab
- Malaiisch, arabisches Schriftsystemnan-Hani
non-Runr
- Altnordisch (Runen-Schrift)osa-Latn
ruq-Cyrl ruq-Latn
se-FI se-NO se-SE
shi-Latn shi-Tfng
shy-Latn
skr-Arab
sr
– Serbischsr-EC
– Serbisch/Kyrillisch (wikipedianisch; EC=Kyrillisch-Ekavisch)sr-EL
– Serbisch/Lateinisch (wikipedianisch)
tg-Cyrl tg-Latn
tly-Cyrl
tt-Cyrl tt-Latn
ug-Arab ug-Latn
uz-Cyrl uz-Latn
zh-Hans zh-Hant
- Sonderfälle (
qq
ist für private Zwecke reservierter Code-Bereich):qqx
– Darstellung aller Systemnachrichten durch ihren Bezeichner statt des ersetzten Textesqqq
– Kurzbeschreibung zu einer Systemnachricht abrufen: translatewiki:MediaWiki:accmailtext/qqq
In der Darstellung nach außen soll
- der Basiscode in Kleinbuchstaben notiert sein.
- Zusätze für Staaten (DE) nur in Großbuchstaben,
- Zusätze für Schriftsysteme beginnend mit Großbuchstaben geschrieben werden.
Inhaltlich sind Groß- und Kleinbuchstaben nicht bedeutungstragend; Software muss jede Notation erkennen und derselben Bedeutung zuordnen. Intern werden deshalb oft ausschließlich Kleinbuchstaben verwendet, und beim Zugriff auf ein Element dann vorsorglich alles in Kleinbuchstaben umgewandelt.
Listen häufiger Codes:
- Liste der ISO-639-1-Codes (≈184 Sprachencodes, 2 Buchstaben)
- Liste der ISO-639-2-Codes (≈502 Sprachencodes, 3 Buchstaben)
- Liste der ISO-639-5-Codes (≈115 Sprachfamiliencodes, 3 Buchstaben)
Konflikt
Betreffend des Codes als
gibt es zwei Interpretationen:
- gemäß ISO 639 Toskisch (albanisch Toskërishtja)
- bei der WMF als alemannisch – dies war vor der Standardisierung durch die ISO bereits festgelegt worden.
Sprachnamen
Die Sprachnamen („Deutsch“) werden im Wiki an mehreren Stellen sichtbar:
- Bei der Auswahl der Sprache der Benutzeroberfläche.
- In der Darstellung der Interlanguages, namentlich auf Wikidata.
- In der Parserfunktion
{{#language:welche|Darstellungssprache}}
Die Textbausteine für den Namen der Sprache speisen sich aus verschiedenen Quellen:
- languages/data/Names.php – Name der Sprache in ihrer eigenen Sprache selbst
- CldrNames – CLDR (mw:Extension:CLDR)
- CldrNames/CldrNamesDe.php – zurzeit 606 Namen auf deutsch
- LocalNames/LocalNamesEn.php – auch beachtenswert: LocalNames
Insgesamt sind fast 700 Zuordnungen von Codes und Sprachnamen bekannt; im Prinzip mehr, als es Sprachversionen der Wikis gibt oder die dem Incubator entschlüpft wären, zumal Varianten innerhalb derselben Wiki-Inhaltssprache auftreten können. Die kreuzweise Zuordnung ist jedoch nicht vollständig; bei exotischen Sprachen existiert oft nur wenig mehr als die englische und die Eigenbezeichnung.
CLDR
Allgemein wird die Definition bevorzugt über die nichtkommerzielle projektübergreifende Plattform Common Locale Data Repository (CLDR) bezogen.
- Jeder kann Anregungen zum CLDR einbringen.
- Die WMF ist Unicode Consortium Liaison Member und müsste bereits einen Contributor Account für CLDR haben, oder könnte leicht einen Status als Vorschlagender erhalten, womöglich auch den eines Redakteurs oder Reviewers zur verantwortlichen Prüfung von Vorschlägen.
- Upstream nennt man die Meldung eines Änderungswunsches aus der Wiki-Welt an CLDR.
- translatewiki:CLDR könnte daran beteiligt sein.
- phab:T39704 beschäftigt sich bereits mit dieser Angelegenheit.
- Wenn MW nicht willig ist, das gebündelt zu übernehmen und zuvor in den Wikis einen Review der internen Vorschläge abzuhalten, dann kann man das natürlich auch als Einzelperson machen: Anmelden
In gewissen Abständen wird der Bestand auf CLDR in die wirksame Definition auf den Wiki-Servern eingepflegt.
- CldrNames – alle momentan wirksamen Definitionen
- Das letzte bekannte Update war: CLDR 36.0, 2019-12-09, Gerrit:550965
- Beispiel:
de
– CldrNames/CldrNamesDe.php;f588bda
- Beispiel:
Aktuelle Werte
- Einige Übersichten: Alle Einzelsprachen
- Wer für eine noch nicht angelegte Sprache eine Übersicht haben möchte, kann eine entsprechende Seite anlegen und den Sprachcode gemäß Muster der anderen Seiten einfügen.
- Synopsis stellt die momentanen Werte und Änderungsvorschläge zusammen.
- Module:Multilingual/cldr – CLDR mirror
Pflege und Ausbau
- de icu-project.org = CLDR – 608 Namen
- Modul:Multilingual/names – Änderungsvorschläge
Verwendung
- Wikiup:Technik/Skin/JS/mw#.cldr – JavaScript-Modul/Objekt
Weitere Informationen
- Wikipedia:Lua/Modul/Multilingual/maintain – Unterstützung für Wartungszwecke
- meta:Language codes (englisch)
- RFC 5646. – Tags for Identifying Languages. [Errata: RFC 5646]. September 2009. Standard: [BCP]. (Löst RFC 4646 ab – englisch).
- Language Subtag Registry – IANA (≈8500 gültige Sprachcodes)
- Schriftsysteme
- Spezial:Interwikitabelle #interwikitable-language
Anmerkungen
- ↑ Ursprünglich sahen die Namen der Domains von Sprach-Wikis ggf. nur Unterstreichungsstriche
_
vor; in jüngerer Zeit wird dies aber umgeleitet auf Bindestriche-
wie in der ISO-Notation.