Reviewed and corrected quality/translations.md

Neu im Wörterbuch:
concatenation = Konkatenation
string = Zeichenkette
textdomain = Textdomäne
This commit is contained in:
debiankaios 2022-12-16 18:19:25 +01:00
parent 3c0c956278
commit 7bc375a1ba
3 changed files with 38 additions and 33 deletions

View File

@ -102,14 +102,14 @@ Eine Variable hat nur einen der folgenden Typen und kann nach einer Zuweisung de
Zu den Operatoren in Lua gehören:
| Symbol | Zweck | Beispiel |
|--------|---------------------------|---------------------------|
| A + B | Addition | 2 + 2 = 4 |
| A - B | Subtraktion | 2 - 10 = -8 |
| A * B | Multiplikation | 2 * 2 = 4 |
| A / B | Division | 100 / 50 = 2 |
| A ^ B | Potenzieren | 2 ^ 2 = 2<sup>2</sup> = 4 |
| A .. B | Zeichenketten verbinden | "foo" .. "bar" = "foobar" |
| Symbol | Zweck | Beispiel |
|--------|-------------------------------------------|---------------------------|
| A + B | Addition | 2 + 2 = 4 |
| A - B | Subtraktion | 2 - 10 = -8 |
| A * B | Multiplikation | 2 * 2 = 4 |
| A / B | Division | 100 / 50 = 2 |
| A ^ B | Potenzieren | 2 ^ 2 = 2<sup>2</sup> = 4 |
| A .. B | Konkatenation (Zeichenketten verbinden) | "foo" .. "bar" = "foobar" |
Bitte beachten Sie, dass diese Liste nicht vollständig ist; sie enthält nicht alle möglichen Operatoren.

View File

@ -13,24 +13,24 @@ marked_text_encoding:
"\27(T@mymod)Hello everyone!\27E"
```
* `\27` is the escape character - it's used to tell Minetest to pay attention as
something special is coming up. This is used for both translations and text
colorisation.
* `(T@mymod)` says that the following text is translatable using the `mymod`
textdomain.
* `Hello everyone!` is the translatable text in English, as passed to the
translator function.
* `\27E` is the escape character again and `E`, used to signal that the end has
been reached.
* `\27` ist das Escape-Zeichen - es wird verwendet, um Minetest mitzuteilen, dass er aufpassen soll, da
etwas Besonderes bevorsteht. Es wird sowohl für Übersetzungen als auch für Text
Einfärbung benutzt.
* `(T@mymod)` besagt, dass der folgende Text mit Hilfe der `mymod` Textdomäne
übersetzbar wird.
* `Hello everyone!` ist der übersetzbare Text in Englisch, wie er an die
Übersetzer-Funktion übergeben wird.
* `\27E` ist das Escape-Zeichen mit `E`, um zu signalisieren, dass das Ende
erreicht wurde.
---
## Einleitung <!-- omit in toc -->
Wenn Sie Ihre Mods und Spiele mit Übersetzungsunterstützung versehen, können mehr Menschen sie genießen. Laut Google Play haben 64 % der Minetest-Android-Nutzer Englisch nicht als ihre Hauptsprache. Minetest verfolgt keine Statistiken für Benutzer
Wenn Sie ihre Mods und Spiele mit Übersetzungsunterstützung versehen, können mehr Menschen sie genießen. Laut Google Play haben 64 % der Minetest-Android-Nutzer Englisch nicht als ihre Hauptsprache. Minetest verfolgt keine Statistiken für Benutzer
über alle Plattformen hinweg, aber es ist wahrscheinlich, dass es einen hohen Anteil an
nicht-englischsprachiger Benutzer gibt.
Minetest ermöglicht es Ihnen, Ihre Mods und Spiele in verschiedene Sprachen zu übersetzen, indem Sie Texte auf Englisch verfassen und mit Hilfe von Übersetzungsdateien in übersetzen. Die Übersetzung wird auf dem Client eines jeden Spielers durchgeführt, so dass jeder Spieler eine andere Sprache sieht.
Minetest ermöglicht es Ihnen, ihre Mods und Spiele in verschiedene Sprachen zu übersetzen, indem Sie Texte auf Englisch verfassen und mit Hilfe von Übersetzungsdateien die Texte in unterschiedliche Sprachen zu übersetzen. Die Übersetzung wird auf dem Client jedes Spielers durchgeführt, so dass jeder Spieler eine andere Sprache sieht.
- [Wie funktioniert die clientseitige Übersetzung?](#wie-funktioniert-die-clientseitige-übersetzung)
@ -59,14 +59,14 @@ minetest.register_craftitem("mymod:item", {
```
Das erste Argument von `get_translator` ist `textdomain`, die als Namensraum dient. Anstatt alle Übersetzungen für eine Sprache in einer einzigen Datei zu speichern, werden die Übersetzungen in Textdomänen aufgeteilt (eine Datei pro Textdomäne
pro Sprache). Die Textdomain sollte mit dem Namen des Mods übereinstimmen, da dies hilft, Mod-Konflikte zu vermeiden.
pro Sprache). Die Textdomäne sollte mit dem Namen des Mods übereinstimmen, da dies hilft, Mod-Konflikte zu vermeiden.
Markierter Text kann an den meisten Stellen verwendet werden, wo menschenlesbarer Text akzeptiert wird, einschließlich *formspecs*, *item def*-Felder, Infotext und mehr. Wenn Sie markierten Text in Formspecs, müssen Sie den Text mit `minetest.formspec_escape` entschlüsseln.
Markierter Text kann an den meisten Stellen verwendet werden, wo menschenlesbarer Text akzeptiert wird, einschließlich *formspecs*, *item def*-Felder, Infotext und mehr. Wenn Sie markierten Text in Formspecs einfügen, müssen Sie den Text mit `minetest.formspec_escape` entschlüsseln.
Wenn der Client auf übersetzbaren Text stößt, wie den, der an `description` übergeben wird, schaut er in der Übersetzungsdatei der Sprache des Spielers nach. Wenn eine Übersetzung nicht gefunden wird, greift er auf die englische Übersetzung zurück.
Der übersetzbare markierte Text enthält den englischen Ausgangstext, die Textdomäne,
und alle zusätzlichen Argumente, die an `S()` übergeben werden. Es ist im Wesentlichen eine Textkodierung des `S`-Aufrufs, die alle erforderlichen Informationen enthält.
und alle zusätzlichen Argumente, die an `S()` übergeben werden. Es ist im wesentlichen eine Textkodierung des `S`-Aufrufs, die alle erforderlichen Informationen enthält.
Eine andere Art von markiertem Text ist der, der von `minetest.colorize` zurückgegeben wird.
@ -75,19 +75,19 @@ Eine andere Art von markiertem Text ist der, der von `minetest.colorize` zurück
### Übersetzungsdateien
Übersetzungsdateien sind Mediendateien, die sich im Ordner `locale` für jeden Mod befinden. Zurzeit wird nur das Format `.tr` unterstützt, aber die Unterstützung für weitere gängige Formate wird wahrscheinlich in der Zukunft hinzugefügt. Übersetzungsdateien müssen folgendermaßen benannt werden: `[textdomain].[lang].tr`.
Übersetzungsdateien sind Mediendateien, die sich im Ordner `locale` von jeder Mod befinden. Zurzeit wird nur das Format `.tr` unterstützt, aber die Unterstützung für weitere gängige Formate wird wahrscheinlich in der Zukunft hinzugefügt. Übersetzungsdateien müssen folgendermaßen benannt werden: `[Textdomäne].[Sprache].tr`.
Dateien im `.tr` beginnen mit einem Kommentar, der die Textdomäne angibt, und dann weiteren Zeilen, die den englischen Ausgangstext auf die Übersetzung abbilden.
Dateien im `.tr` beginnen mit einem Kommentar, der die Textdomäne angibt, und dann weiteren Zeilen, die den englischen Ausgangstext in die Übersetzung übertragen.
Zum Beispiel: `mymod.fr.tr`:
Zum Beispiel: `mymod.de.tr`:
```
# textdomain: mymod
Hello everyone!=Bonjour à tous !
I like grapefruit=J'aime le pamplemousse
Hello everyone!=Hallo zusammen!
I like grapefruit=Ich mag Traubenfrüchte
```
Sie sollten Übersetzungsdateien auf der Grundlage des Quellcodes Ihres Mods/Spiels erstellen, unter Verwendung eines Tools wie [update_translations](https://github.com/minetest-tools/update_translations). Dieses Tool sucht nach `S(` in Ihrem Lua-Code und erstellt automatisch eine Vorlage, die Übersetzer für die Übersetzung in ihre Sprache verwenden können. Es kümmert sich auch darum, die Übersetzungsdateien zu aktualisieren, wenn sich Ihr Quelltext ändert.
Sie sollten Übersetzungsdateien auf der Grundlage des Quellcodes Ihres Mods/Spiels erstellen, unter Verwendung eines Tools wie [update_translations 🇬🇧](https://github.com/minetest-tools/update_translations). Dieses Tool sucht nach `S(` in Ihrem Lua-Code und erstellt automatisch eine Vorlage, die Übersetzer für die Übersetzung in ihre Sprache verwenden können. Es kümmert sich auch darum, die Übersetzungsdateien zu aktualisieren, wenn sich Ihr Quelltext ändert.
Sie sollten immer wörtlichen Text (`"`) in S einfügen, anstatt eine Variable zu verwenden,
da dies den Werkzeugen hilft, Übersetzungen zu finden.
@ -104,7 +104,7 @@ end)
Wenn Sie ein wörtliches `@` in Ihre Übersetzung einfügen wollen, müssen Sie die Escape-Schreibweise verwenden, indem Sie `@@` schreiben.
Sie sollten die Verkettung *innerhalb* eines Satzes vermeiden, aber es wird empfohlen, dass mehrere Sätze durch Konkatenation zu verbinden. Dies hilft den Übersetzern, weil Zeichenketten kleiner gehalten sind.
Sie sollten die Konkatenation *innerhalb* eines Satzes vermeiden, aber es wird empfohlen, mehrere Sätze durch Konkatenation zu verbinden. Dies hilft den Übersetzern, weil Zeichenketten kleiner gehalten sind.
```lua
S("Hello @1!", player_name) .. " " .. S("You have @1 new messages.", #msgs)
@ -113,15 +113,17 @@ S("Hello @1!", player_name) .. " " .. S("You have @1 new messages.", #msgs)
## Beste Verfahren und verbreitete Unwahrheiten über die Übersetzung <a name="verfahren"></a>
* Vermeiden Sie die Verkettung von Text und verwenden Sie stattdessen Formatierungsargumente. Dies gibt Übersetzer die volle Kontrolle über die Änderung der Reihenfolge der Dinge.
* Vermeiden Sie die Konkatenation von Text und verwenden Sie stattdessen Formatierungsargumente.
Dies gibt den Übersetzern die volle Kontrolle über die Änderung der Reihenfolge.
* Erstellen Sie Übersetzungsdateien automatisch, indem Sie
[update_translations](https://github.com/minetest-tools/update_translations) verwenden.
[update_translations 🇬🇧](https://github.com/minetest-tools/update_translations) verwenden.
* Es ist üblich, dass Variablen den umgebenden Text verändern, zum Beispiel durch
Geschlecht und Pluralisierung. Dies ist oft schwer zu handhaben, daher wird
Geschlecht und Pluralisierung. Dies ist oft schwer zu behandeln, daher wird
häufig mit geschlechtsneutralen Formulierungen umgangen.
* Übersetzungen können viel länger oder viel kleiner als der englische Text sein. Stellen Sie
sicher, dass Sie viel Platz lassen.
* In anderen Sprachen werden Zahlen möglicherweise anders geschrieben, zum Beispiel mit Kommas als Dezimalkomma. `1.000,23`, `1'000'000,32`
* In anderen Sprachen werden Zahlen möglicherweise anders geschrieben, zum Beispiel
mit Kommas als Dezimalkomma(also wie im Deutschen). `1.000,23`, `1'000'000,32`
* Gehen Sie nicht davon aus, dass andere Sprachen die Großschreibung auf die gleiche Weise verwenden.

View File

@ -14,6 +14,7 @@ child = Kind
client = Client
Cohesion = Kohäsion
Command = Befehl
concatenation = Konkatenation
Context = Context
Cubic Nodes = Würfelförmiger Block
craft slots = Handwerksplätze
@ -122,9 +123,11 @@ small data = kleine Daten
sneak elevators = Schleichfahrstühle
sneak glitch = sneak glitch
Stack = Stack
string = Zeichenkette
storage = Storage
Subcommand = Unterbefehl
table = Tabelle
textdomain = Textdomäne
tile = Kachel
tiles = Kacheln
timer = timer