Jump to content

Meta:Internationalisierungsrichtlinien

From Meta, a Wikimedia project coordination wiki
This page is a translated version of the page Meta:Internationalization guidelines and the translation is 77% complete.
Outdated translations are marked like this.

Das Meta-Wiki zielt darauf ab ein mehrsprachiges Wiki zu sein, deshalb wird von den meisten Seiten erwartet, dass sie übersetzbar und übersetzt sind. Damit eine Seite durch die Translate-Erweiterung übersetzbar wird, sollte sie die Tags ‎<translate>...‎</translate> enthalten (also internationalisiert) werden und dann durch einen Übersetzungsadministrator für die Übersetzung markiert werden. Diese Seite möchte die Richtlinien für Seiteninternationalisierung im Meta-Wiki darstellen.

Allgemeine Richtlinien

Im Allgemeinen solltest du den Richtlinien der Translate-Erweiterung über die Markierung einer Seite für Übersetzung folgen: Wenn möglich, vermeide es Übersetzungseinheiten manuell mithilfe von ‎</translate> -Tags aufzutrennen, lasse das stattdessen leere Zeilen übernehmen.

Although you can edit translated content using the visual editor, you must use the source editor to add or change translation markup. To make it easier to add translation markup, use the buttons in the box under the editing interface.

Segmentierungsbeispiele

Gute Syntax Schlechte Syntax
Add ‎<translate> tags on new lines around headings and paragraphs.
<translate>
== Abschnittsüberschrift ==

Dies ist ein Absatz.

Dies ist ein anderer Absatz.
</translate>

{{Vorlage}}

<translate>
== Andere Überschrift ==
</translate>
Heading markup (for example: ==) must be included in translation units.
== <translate>Abschnittsüberschrift</translate> ==
<translate>Dies ist ein Absatz.</translate>

<translate>Dies ist ein anderer Absatz.</translate>

{{Vorlage}}

== <translate>Andere Überschrift<translate> ==
Split list items into individual translation units without line breaks. Exclude list markup from the translation unit.
* <translate>Dies ist eine lange Liste:</translate>
** <translate>Es gibt mehr als 160 Worte in dieser Liste,</translate>
** <translate>oder es gibt mehr als 8 Elemente.</translate>
* <translate>Es ist also besser, sie in mehrere kleinere Einheiten aufzuteilen.</translate>
* <translate>Aber wir müssen Aufzählungspunkte aus den translate-Tags raushalten um die Liste zugänglich zu halten.</translate>
List markup (for example: * or #) must be excluded from translation units.
<translate>
* Dies ist eine lange Liste:
** Es gibt mehr als 160 Worte in dieser Liste,
** oder es gibt mehr als 8 Elemente.
</translate>
<translate>
* Es ist also besser, sie in mehrere kleinere Einheiten aufzuteilen.
* Aber wir müssen Aufzählungspunkte aus den translate-Tags raushalten um die Liste zugänglich zu halten.
</translate>

Spezifische Elemente

Links require special markup to link to the correct language variant of the target page. Use localized link syntax for any page that could be translated, even if it hasn't been marked for translation. Pages which do not need localized link syntax include talk pages and templates without textual content.

To link to a page on a multilingual wiki, prefix links with Special:MyLanguage/. To make translation easier, include only the link text in the translation unit, not the link target. If the link is part of a larger translation unit, like a paragraph, you can exclude the link target from the translation unit by wrapping it inside a translation variable (<tvar name=1> … </tvar>).

For a standalone link to a page on the same wiki, such as in a list or a table, you can use the localized link template to simplify the syntax. This works on Meta-Wiki, mediawiki.org, Outreach Wiki, and other wikis where this template is available.

Für Links auf Wikipediaartikel solltest du die Vorlage {{lwp}} für das Ziel benutzen und es mit einer tvar umschließen. Z. B. ergibt [[{{lwp|Rosa Parks}}</tvar>]] für englische Seiten en:Rosa Parks und für französische Seiten fr:Rosa Parks.

Für andere Links, entweder zwischen Wikis oder externe, solltest du das Ziel des Links nicht in tvar packen, wenn eine Übersetzung existiert. Natürlich kannst du dieses System benutzen und den ganzen Link der Zielwebseite in tvar packen, wenn die Zielwebseite ein Sprachenerkennungssystem (wie MediaWikis Special:MyLanguage/) hat.

Gute Syntax Schlechte Syntax
To link to a page on a multilingual wiki, prefix the link target with Special:MyLanguage/, and add link text. Use a translation variable to ensure that only the link text is included in the translation unit.
<translate>
Learn about [[<tvar name=1>Special:MyLanguage/Wikimedia projects</tvar>|Wikimedia projects]] and how to request a [[<tvar name=2>Special:MyLanguage/New project process</tvar>|new project]].
</translate>
The translation variable should include only the link target, not the link text.
<translate>
Learn about [[<tvar name=1>Special:MyLanguage/Wikimedia projects</tvar>|Wikimedia projects]] and how to request a [[<tvar name=2>Special:MyLanguage/New project process|new project</tvar>]].
</translate>
For a standalone link to a page on the same wiki, such as in a list or a table, use Template:ll , and translate only custom link text. You can use |nsp=0 to simplify the link text by omitting the namespace.
<translate>
See also:
</translate>

* {{ll|Help:Contents|2=<translate>Help pages</translate>}}
* {{ll|Meta:Discussion pages|nsp=0}}
A parameter name (2=) is required when adding ‎<translate> tags inside template syntax.
<translate>
See also:
</translate>

* {{ll|Help:Contents|<translate>Help pages</translate>}}
* {{ll|Meta:Discussion pages|nsp=0}}
For external links, exclude the link target from the translation unit using a translation variable.
<translate>
This is a text with an [<tvar name=url>https://openstreetmap.org</tvar> external link].
</translate>
A translation variable is required to exclude the external link target from the translation unit.
<translate>
Dies ist ein Text mit einem [[internen Link]] und einem [https://openstreetmap.org externen Link].
</translate>

Kategorisierung

Du solltest Kategoriebestimmungen aus ‎<translate> -Tags raushalten. Füge stattdessen {{#translation:}} nach dem Kategorienamen ein: [[Category:Zielkategorie{{#translation:}}]]. So wird nur die englische Hauptseite in der Zielkategorie eingefügt, während übersetzte Seiten in sprachspezifische Kategorien eingefügt werden.

Gute Syntax Schlechte Syntax
[[Category:Wikipedia{{#translation:}}]]
<translate>[[Category:Wikipedia]]</translate>

Bilder

Thumbnails und große Bilder

Wenn das Bild lokalisiert werden kann (z. B. weil es Text enthält und eine übersetzte Version existiert) sollte es vollständig in ‎<translate> -Tags eingeschlossen werden.

Ansonsten solltest du nur den alt= -Wert in <translate nowrap> -Tags und die Untertitel in <translate> -Tags einschließen.

Falls left oder right als Bildparameter benutzt werden: Entferne ihn, falls er unnötig ist (Thumbnails sind standardmäßig im Englischen rechts), oder tausche ihn mit {{dirstart}} oder {{dirend}} aus.

Gute Syntax Schlechte Syntax
[[File:Landschaft.jpg |thumb |{{dirstart}} |alt=<translate nowrap>Sonnenuntergang</translate> |<translate>Foto einer wunderschönen Landschaft</translate>]]
<translate>
[[File:Landschaft.jpg |thumb |left |alt=Sonnenuntergang |Foto einer wunderschönen Landschaft]]
</translate>
<translate>
[[File:Screenshot Englische Wikipedia.png|thumb|alt=Homepage of English Wikipedia with featured article and news topics|Wikipedia Startseite]]
</translate>
[[File:Screenshot Englische Wikipedia.png|thumb|right|alt=<translate nowrap>Homepage of English Wikipedia with featured article and news topics</translate>|<translate>Wikipedia Startseite</translate>]]

Icons

Symbole innerhalb einer Zeile können einfach in ein <tvar name="icon"> -Tag eingeschlossen werden.

Gute Syntax Schlechte Syntax
<translate>
[[File:Schönes Hallo Wort.png|alt=Hallo allerseits!]], <tvar name="icon">[[File:Smiley.png|alt=🙂]] Wie geht es dir?
</translate>
<translate>
[[File:Schönes Hallo Wort.png|alt=Hallo allerseits!]], [[File:Smiley.png|alt=🙂]] Wie geht es dir?
</translate>

Übersetzungsvariablen

Übersetzungsvariablen (<tvar name="name"></tvar> Syntax) sollten benutzt werden, um Text vor den Übersetzenden zu verstecken, damit er nicht übersetzt werden kann.

Die folgenden Beispiele sollten in ein tvar eingeschlossen werden:

  • Automatisch lokalisierte oder nicht-lokalisierbare Linkziele,
  • Benutzernamen,
  • Zahlen, die sich wahrscheinlich ändern (sollten in {{formatnum:}} eingeschlossen werden, dann in tvar),
  • Tag-Attribute (z. B. <span class="css_class" style="background-color:blue"</tvar>>hello</span>),
  • Vorlagenname und -parameter (z. B. {{<tvar name=1>center|5px</tvar>|hello}}),
  • Teile von kompliziertem Wikitext oder HTML (aber stelle bitte sicher, dass der resultierende Wikitext für alle Übersetzenden ausbalanciert ist).

Die folgenden Beispiele sollten nicht in ein tvar eingeschlossen werden:

  • Namen von Menschen und Orten (selbst wenn sie nur selten übersetzt werden, werden sie ggf. transliteriert),
  • XML-Tags ohne Attribute, z. B. <code> (die Übersetzungsschnittstelle kümmert sich darum),
  • lokalisierbare Linkziele (also Links zu mehrsprachigen Websites).

Namen für Übersetzungsvariablen

Um Übersetzenden zu helfen, halte tvar Namen bitte so kurz und lesbar wie möglich. Sollten Übersetzende den Inhalt nicht wissen müssen ist das Verwenden von Zahlen als Namen eine gute Idee, da Ziffern für die meisten Übersetzenden schnell geschrieben werden können und in vielen Sprachen häufig vorkommen (sodass die meisten Beginner sie nicht versehentlich übersetzen).

Falls ein tvar jedoch innerhalb eines Satzes ist sollte er einen eindeutigen Namen haben, damit Übersetzende verstehen, was er enthält und ihn so einfach an der richtigen Stelle in deren Übersetzung platzieren können (sehr häufig für eine E-Mail-Adresse, URL, Wikitext Tag-Namen...).

Gute Syntax Schlechte Syntax
[[<tvar name="1">Special:MyLanguage/Help:Links|Siehe Hilfeseite]]
[[Special:MyLanguage/Help:Links|Siehe Hilfeseite]]
Dieses Treffen wird am <tvar name="date">{{dateT||9|24}}</tvar> auf <tvar name="software">{{int string|Zoom}}</tvar> stattfinden.
Dieses Treffen wird am <tvar name=1>{{dateT||9|24}}</tvar> auf <tvar name=2>{{int string|Zoom}}</tvar> stattfinden.

Vermeide auch die Verwendung von Leerzeichen, Unterstrichen oder Buchstaben mit diakritischen Zeichen in tvar Namen.

Gute Syntax Schlechte Syntax
<tvar name="max-count">84</tvar> Cafés
<tvar name="max_count of café">84</tvar> Cafés

Vorlagen

Du kannst eine Vorlage zum Übersetzen vorbereiten wie jede Seite, aber du solltest sicherstellen, dass die "Aktivieren der übersetzungsfähigen Transklusion für diese Seite" Box ausgewählt wurde, wenn du die Seite für Übersetzung markierst.

Solltest du ein ‎<translate> -Tag in einen Parameterwert einer Vorlage einfügen, stelle sicher, dass der Parameter benannt ist (ansonsten füge einen numerischen Namen hinzu, wie 1=).

Wenn deine Vorlage wahrscheinlich auch in nicht-übersetzbaren Seiten (z.B. Benutzerseiten) benutzt wird und selbst auf diesen Seiten übersetzt sein sollte kannst du den vor-2021 Trick mit Switch, bei dem uselang={{PAGELANGUAGE}} mit uselang={{int:lang}} ersetzt wird, wie beim unten gezeigten Code.

Vor-2021 Tricks

Vor MediaWiki 1.36.0-wmf.32 (2021-02-23) konntest du sicherstellen, dass englische Seiten die /en -Unterseite einer Vorlage anstelle der Vorlage selbst einbinden.

Eine Möglichkeit war, jedes Autreten von {{meine übersetzte Vorlage|param}} mit {{TNT|meine übersetzte Vorlage}} auszutauschen, außer in Vorlagen oder transkludierten Seiten, die stattdessen {{ {{TNTN|meine übersetzte Vorlage}} |param}} enthalten sollte.

Eine andere Möglichkeit war die Vorlage so zu ändern, sodass sie selbst {{TNT}} aufruft. Zu diesem Zweck solltest du den gesamten Vorlagencode in einen Switch packen, der ein leeres ‎<translate> Tag auswertet, mit einem Standardfall, der {{TNT}} aufruft.

{{#switch:<translate></translate>
|=<vollständiger Vorlagencode>
|#default={{#invoke:Template translation|renderTranslatedTemplate|template={{subst:FULLPAGENAME}}|uselang={{PAGELANGUAGE}}|noshift=1}}
}}

Siehe auch