Translations-de
English | Deutsch | Portugisisch | Koreanisch | Russisch | 汉语 | Spanisch
Contents
Einleitung
aMule ist sehr einfach in andere Sprachen zu übersetzen. Und unterstützt auch Unicode, ist also nichtmehr nur auf Abendländische Schriftarten beschränkt. Chinesische, Koreanische, Arabische, Hebreische (...) Übersetzungen sind möglich!
Aber Übersetzungen brauchen Übersetzer, also zögere nicht dein aMule Abenteuer zu beginnen!
Du brauchst nicht in C++ oder Klingonisch programmieren können um Übersetzer zu werden! Du musst nur deine Muttersprache beherrschen (!!) und ein bisschen Englisch!
Interessiert? Also los!
Wie funktionierts
Wir posten von Zeit zu Zeit (ca. monatlich) eine Textdatei namens source_strings.po im Translation Forum.
Lade diese herrunter und öffne sie mit KBabel wenn du KDE, PoEdit oder gTranslator wenn du Gnome benutzt.
Vergesse vorher nicht KBabel, PoEdit oder gTranslator zu konfigurieren, sodass es deinen Name, EMail, Zeichensatz, und so weiter, richtig einträgt.
Dies wirst du in KBabel sehen:
Oben Links hast du den englischen Text.
Oben Rechts den Namen der Datei aus der der Text stammt.
Du musst jetzt nur den übersetzten Text unten links ungefähr so eintragen:
Achte SEHR darauf das du alle Sonderzeichen wie &, %i, \n, usw. in den übersetzten Text kopierst, ebenso müssen Leerzeichen an Anfang und Ende des Textes beibehalten werden.
BITTE, lies dieses Dokument welche Zeichen nicht geändert werden dürfen.
Fahre so mit allen Texten fort, speicher das ganze und...
Übersetzen beendet! Nun poste das ganze in aMules translations forum und tausende werden dir dankbar sein:)
Eine bereits begonnene Übersetzung fortführen
Nachdem die Übersetzung begonnen wirde, brauchst du nicht alle Texte in source_strings.po jedesmal neu übersetzen!
Automatisch können alle übersetzten Text in die neue source_strings.po eingearbeitet werden.
Zum Beispiel: Du willst mit der Deutschen Übersetzung weitermachen:
- Lade die neue source_strings.po aus dem Forum herunter, und die alte de.po aus der früheren aMule Veröffentlichung.
- Führe die alte und die neue Übersetzung zusammen mittels:
msgmerge --no-fuzzy-matching -o neue_de.po de.po source_strings.po
Du kannst natürlich auch die eingebauten Zusammenführungsfunktionen von KBabel oder PoEdit verwenden(lies dafür die jeweilige Programmdokumentation).
Nun kannst du mit der neuerstellten neue_de.po wie mit der Üsprünglichen source_srings.po verfahren, Außer das du nur noch die neuen oder geänderten Texte übersetzen musst.
Testen der Übersetzung
Erste Anmerkungen
Wenn du mit der Übersetzung durch bist kannst du [aMule-de|aMule]] einfach neu Kompilieren , oder du kannst vorher testen ob deine Datei in Ordnung ist (diese Schritte werden beim Kompilieren automatisch ausgeführt).
Der Vorteil in letzterer Methode liegt darin, dass du nicht den kompletten aMule bauen musst, sondern nur die Binärausgabe deiner Übersetzung.
Der empfohlene Weg ist es, nur die Übersetzungsdatei zu testen bis es klappt, und aMule zu kompilieren um zu sehen ob alles passt.
Nur die Übersetzungsdatei testen
Einfachere Methode
Wenn du keine Entwicklungsumgebung installiert hast ist selbst der Aufruf von ./configure unmöglich, weil dieser nach Compiler, Headern, usw. sucht. Also simuliere einfach, was die Makefiles tun würden. Starte msgfmt -c --statistics -o Übersetzung.gmo Übersetzung.po wie z.B. msgfmt -c --statistics -o de.gmo de.po im Verzeichnis in dem deine .po-Datei liegt.
[~/aMule/amule-dev-cvs/po]$ msgfmt -c --statistics -o de.gmo de.po 1549 übersetzte Meldungen.
Die Interpretation der Meldungen wird weiter unten beschrieben. Dies benötigt nur gettext das auf so ziemlich allen Linux und *NIX vorhanden sein sollte.
Kompliziertere Methode
Um dies zu tun führe zuerst ./configure aus.
Nachdem du deine übersetzte Datei in das po/ Verzeichnis verschoben hast, starte make Übersetzung.gmo wie z.B. make de.gmo
Wenn deine Übersetzung passt siehst du eine Ausgabe wie:
[~/aMule/amule-dev-cvs/po]$ make de.gmo rm -f de.gmo && /usr/bin/msgfmt -c --statistics -o de.gmo de.po 1549 übersetzte Meldungen.
Dieses Beispiel zeigt eine komplette und erfolgreiche Übersetzung.
Als "erfolgreich" kannst du eine Übersetzung verstehen die, entweder vollständig ist, oder auch nicht, aber immerhin keine Syntaxfehler enthält.
Eine erfolgreiche aber nicht vollständige Übersetzung sieht folgendermaßen aus:
[~/aMule/amule-dev-cvs/po]$ make de.gmo rm -f de.gmo && /usr/bin/msgfmt -c --statistics -o de.gmo de.po 1547 übersetzte Meldungen, 2 unübersetzte Meldungen.
Wie du sehen kannst wurden 2 Zeilen in dieser Übersetzung noch nicht übersetzt.
Zusätzlich kannst du auch noch ungenaue Übersetzungen haben. Ungenaue Übersetzungen sind diese, welche von gettext vorgeschlagen wurden aber wahrscheinlich falsch (vielleicht aber nah dran) sind. Diese werden mit einem #, fuzzy direkt in der Zeile über der Übersetzung markiert. Falls du also ungenaue Übersetzungen angezeigt bekommst, suche und repariere diese Zeilen (oder nimm einfach das #, fuzzy in der Zeile davor weg, falls die Übersetzung korrekt ist).
Ein Beispiel für ungenaue Übersetzungen wäre:
[~/aMule/amule-dev-cvs/po]$ make hr.gmo rm -f sv.gmo && /usr/bin/msgfmt -c --statistics -o sv.gmo sv.po 623 übersetzte Meldungen, 12 ungenaue Übersetzungen, 914 unübersetzte Meldungen.
Als Letztes kann deine Übersetzung noch Fehler enhalten. In diesem Fall, wirst du die Position und eine Beschreibung des Fehlers angezeigt bekommen:
[~/aMule/amule-dev-cvs/po]$ make de.gmo rm -f de.gmo && /usr/bin/msgfmt -c --statistics -o de.gmo de.po de.po:95: Anzahl der Formatspezifikationen in »msgid« und »msgstr« stimmt nicht überein /usr/bin/msgfmt: es ist 1 fataler Fehler aufgetreten 1549 übersetzte Meldungen. make: *** [de.gmo] Fehler 1
Obiges Beispiel hat einen Fehler in Zeile 95, Es wird keine Binärausgabe dieser Datei erzeugt bis das behoben ist.
Testen mit aMule
Weniger Komplizierte Methode
Wenn dein aMule noch nicht so alt ist das er inkompatibel zu deiner Übersetzung ist, kannst du die eben erstellte Übersetzung (z.B. die .gmo Datei) installieren um sie zu testen ohne zu kompilieren.
WARNUNG : Du musst die existierende /usr/share/locale/Übesetzung/LC_MESSAGES/amule.mo vorher sichern. Du musst auch die Berechtigung haben diese Datei zu ändern. Dies kann deine aMuleinstallation abstürzen lassen. Falls das passiert, stelle die original amule.mo-datei wieder her.
Hier kommt das Beispiel. Du solltest direkt verstehen wie das funktioniert. In dem Verzeichnis in dem Übersetzung.gmo (hier de.gmo) liegt:
$ cp /usr/share/locale/de/LC_MESSAGES/amule.mo . $ cp de.gmo /usr/share/locale/de/LC_MESSAGES/amule.mo
Wenn das erste cp sich beschwert das die Datei nicht existiert, dann musst du das Verzeichnis (hier /usr/share/...) auf das Prefix in das aMule installiert wurde ändern, zum Beispiel /usr/X11R6/share/... oder /usr/local/share/...
Wenn das zweite cp sowas wie "Keine Berechtigung" ausspuckt, dann hast du keine Berechtigung die Datei zu ädern. In den meisten Fällen musst du dafür root sein.
Kompliziertere Methode
Du kannst deine Übersetzung auch durch rekompilieren von aMule testen und sehen wie es aussieht.
Wenn deine Sprache noch nicht in aMule verfügbar war, musst du es der Datenbank hinzufügen, sodass aMule weiß das sie existiert und auch mit kompiliert. Um das zu tun, schreibe das Sprachkürzel der Übersetzung in die po/LINGUAS-datei (eine Sprache pro Zeile).
Jetzt kompiliere aMule ganz normal. Falls du Hilfe brauchst, Lies das hier.
Übersetzen für Fortgeschrittene
Falls du kein Anfänger in der Entwicklung und unter Linux bist, oder einfach nur ungeduldig und immer eine aktuelle Übersetzung haben willst...
Generiere deine eigene source_strings.po!
Wie ist vorzugehen?
- Lade die aktuelle aMule CVS Entwicklerversion von http://amule.hirnriss.net herunter.
- Entpacke das Archiv, gehe ins Stammverzeichnis um die Makefiles zu generieren:
tar -xjf aMule-cvs-20041009.tar.bz2
cd amule-cvs
./configure
- Bringe die POTFILE.in-datei auf den aktuellen Stand:
grep -m 1 '_(' `find * -name "*.cpp"` | cut -d: -f1 > po/POTFILES.in
- Generiere die neue source_strings.po:
cd po
mv amule.pot amule.pot.old
make amule.pot
mv amule.pot source_strings.po
mv amule.pot.old amule.pot
--Thepolish 22:46, 9 Oct 2004 (CEST)
--Übersetzt Vollstrecker 19:30, 29 Aug 2007 (CEST)