po-debconf

Autres langues

Langue: de

Autres versions - même langue

Version: 2008-10-24 (ubuntu - 08/07/09)

Section: 7 (Divers)

NAME

po-debconf - Einfu.hrung

BESCHREIBUNG

Das Ziel von »Debconf« bestand darin, die Paketkonfiguration benutzerfreundlich zu gestalten. Um dies zu erreichen, ist es wichtig sicherzustellen, dass die Benutzer die Fragen in ihrer eigenen Sprache pra.sentiert bekommen. U.bersetzer beno.tigen ein Rahmenwerk, um leicht an U.bersetzungen arbeiten zu ko.nnen, ohne die Paketentwicklung nachzuverfolgen. »po-debconf« wurde entwickelt, um beim U.bersetzen der Debconf-Vorlagendateien mit den Standard-»Gettext«-Werkzeugen zu arbeiten.

I18N-UNTERSTU.TZUNG ZU DEBCONF-VORLAGENDATEIEN HINZUFU.GEN

Falls Sie Debconf-Unterstu.tzung fu.r Ihr Paket hinzufu.gen, haben Sie eine Vorlagendatei mit englischem Text erstellt. Um korrekte i18n-Unterstu.tzung zu Ihrem Paket hinzuzufu.gen, mu.ssen Sie das folgende erledigen:
- Erstellen Sie debian/po/POTFILES.in
Diese Datei entha.lt die Liste der Master-Vorlagen. Typischerweise entha.lt sie eine einzelne Zeile:
   [type: gettext/rfc822deb] templates
 
 

Pfade sind relativ zum Elternverzeichnis.

- Stellen Sie u.bersetzbaren Feldern einen Unterstrich voran
Normalerweise ko.nnen die Felder »Description«, »Choices« und manchmal »Default« u.bersetzt werden.
- Fu.hren Sie debconf-updatepo aus
Dies erstellt die Datei debian/po/templates.pot, die dann die U.bersetzer in ihre eigene Sprache u.bersetzen werden.
- Fu.gen Sie eine Bau-Abha.ngigkeit auf "po-debconf" in debian/control hinzu.
 

VORLAGEN AKTUALISIEREN

Um U.bersetzern zu helfen, sollten PO-Dateien in Ihren Paketen immer aktuell sein, andernfalls ko.nnten diese ihre Zeit mit unbenutzten Zeichenketten verschwenden. Um dies zu erreichen, rufen Sie einfach den folgenden Befehl ohne Argumente auf:
   $ debconf-updatepo
 
 

Sie sollten diesen Befehl jedes Mal ausfu.hren, wenn Sie Ihre englischen Vorlagen a.ndern, aber auch, wenn Sie neue oder aktualisierte U.bersetzungen erhalten, da U.bersetzer an einer veralteten PO-Datei gearbeitet haben ko.nnten.

Falls Sie einige Vorlagen-Dateien umbenennen, hinzufu.gen oder entfernen, denken Sie daran, auch debian/po/POTFILES.in entsprechend zu bearbeiten, da andernfalls englische Zeichenketten aus den PO-Dateien fehlen und Benutzern angezeigt werden, selbst wenn die PO-Dateien vollsta.ndig u.bersetzt sind.

Das Programm debconf-updatepo is idempotent, es vera.ndert PO-Dateien nur, wenn sich ihr Inhalt gea.ndert hat. Daher ist die beste Lo.sung, um aktuelle PO-Dateien in Ihren Quellpaketen bereitzustellen, ein Aufruf dieses Befehls im »clean«-Ziel in der Datei debian/rules.

Bitte beachten Sie, dass Sie debconf-updatepo selbst dann ausfu.hren mu.ssen, falls Sie dh_installdebconf verwenden. Letzeres ruft po2debconf auf, das fru.her debconf-updatepo ausfu.hrte, falls veraltete Dateien entdeckt wurden. Dies passiert nicht mehr, da dies aus mindestens zwei Gru.nden keine gute Idee war:

1.
po2debconf verlieβ sich auf Zeitstempel, um veraltete Dateien zu erkennen. Es kann missbraucht werden, wenn »pbuilder« verwendet wird oder falls eine veraltete U.bersetzung lange nach der A.nderung der Vorlagen auf der Platte gespeichert wird.
2.
dh_installdebconf wird lange nach der Erstellung der Datei ».diff.gz« ausgefu.hrt.

U.BERSETZUNGEN UND ORIGINAL ZUSAMMENFU.HREN

Sie mu.ssen sicherstellen, dass beim Paketbau die U.bersetzungen in das gebaute Paket gelangen. Sie ko.nnen dies manuell durchfu.hren, oder mit dem Skript dh_installdebconf automatisch (achten Sie darauf, dass die Bau-Abha.ngigkeit versioniert ist: »debhelper (>= 4.1.16)«).

Um dies manuell zu erreichen, mu.ssen Sie die Vorlagen und die U.bersetzungen beim Bauen manuell zusammenfu.hren (und Sie mu.ssen eine Bau-Abha.ngigkeit auf »po-debconf« haben). Dies geschieht wie folgt:

   $ po2debconf debian/templates > debian/tmp/DEBIAN/templates
 
 

SEIEN SIE VORSICHTIG: die zwei Dateien mit dem Namen templates sind u.berhaupt nicht identisch. Die erste entha.lt nur englischen Text, und entha.lt Markierungen, um einige Felder als u.bersetzbar zu kennzeichnen, wa.hrend die zweite alle Sprachen entha.lt. Anders ausgedru.ckt, Sie KO.NNEN NICHT nur die zusammengefu.hrten Vorlagen behalten, oder Sie werden nicht in der Lage sein, mit U.bersetzungen umzugehen, wenn diese bei Ihnen eingereicht werden.

NEUE MASTER-VORLAGEN

Das neue Quellformat der Vorlagendateien ist nahezu identisch zu einer der verteilten Vorlagendateien, aber u.bersetzbaren Felder wird ein Unterstrich vorangestellt. Beispiel:
   Template: debconf/frontend
   Type: select
   _Choices: Dialog, Readline, Gnome, Editor, Noninteractive
   Default: Dialog
   _Description: Interface to use for configuring packages:
    Packages that use debconf for configuration share a common look and
    feel.  You can select the type of user interface they use.
    .
    The dialog frontend is a full-screen, character based interface,
    while the readline frontend uses a more traditional plain text
    interface, and the gnome frontend is a modern X interface.  The
    editor frontend lets you configure things using your favorite text
    editor. The noninteractive frontend never asks you any questions.
 
 

CHOICES-LISTEN AUFTEILEN

Seit »po-debconf« 0.6.0 du.rfen u.bersetzte Felder zwei fu.hrende Unterstriche haben. In diesem Fall sollen die Feld-Werte eine Komma-separierte Liste von Werten sein, die in separate msgids gesteckt werden. Falls daher das vorherige Beispiel folgendes enthielt

   __Choices: Dialog, Readline, Gnome, Editor, Noninteractive
 
 

ga.be es fu.nf verschiedene msgids. Beachten Sie, dass Leerzeichen nach Kommata nicht signifikant sind.

Kurz gesagt, wenn sich eine Auswahlliste nie a.ndert, ist »_Choices« gut geeignet, andernfalls erleichtert »__Choices« das Leben der U.bersetzer.

Unglu.cklicherweise werden alle U.bersetzungen unscharf (XfuzzyX), wenn Sie sich entscheiden, zwischen diesen beiden Formaten zu wechseln. Es folgt eine Erla.uterung, wie Sie diese A.nderung ohne Verlust an U.bersetzungen realisieren ko.nnen (hierfu.r wird »po-debconf« >= 1.0 beno.tigt). Nehmen Sie an, dass wir das bisherige Beispiel auf »__Choices« umstellen wollen. Sie kopieren die Datei templates in eine tempora.re Datei.

   $ cp debian/templates debian/foo
 
 

Bearbeiten Sie debian/foo und behalten Sie nur die Felder »Template«, »Type« und »_Choices«. In diesem Beispiel sind dies:

   Template: debconf/frontend
   Type: select
   _Choices: Dialog, Readline, Gnome, Kde, Editor, Noninteractive
 
 

Fu.hren Sie debconf-gettextize mit den Schaltern »--merge« und »--choices« aus, um PO-Dateien so zu schreiben, als ob »__Choices« geschrieben wa.re und fu.hren Sie diese PO-Dateien mit den existierenden zusammen:

   $ debconf-gettextize --merge --choices debian/foo
 
 

Schlieβlich mu.ssen Sie foo entfernen und debian/templates manuell bearbeiten, um »_Choices« durch »__Choices« zu ersetzen, bevor debconf-updatepo ausgefu.hrt wird.

KOMMENTARE FU.R U.BERSETZER EINFU.GEN

Die Betreuer von »Dpkg« haben entschieden, dass per Konvention Zeilen in debian/control, die mit einem Nummern-Zeichen (»#«) beginnen, Kommentare sind, und »po-debconf« folgt dieser Regel. Seit »po-debconf« 0.8.0 werden solche Kommentare in PO-Dateien geschrieben und ko.nnen wertvolle Informationen fu.r U.bersetzer enthalten. Zufa.lligerweise ignorierten a.ltere Versionen von »po-debconf« Zeilen, die keinen Doppelpunkt enthielten, falls daher Ihre Kommentare keinen Doppelpunkt enthalten, brauchen Sie keine versionierte Abha.ngigkeit auf »po-debconf« zu verwenden. Hier ist ein Beispiel:

   Template: debconf/button-yes
   Type: text
   # Translators, this text will appear on a button, so KEEP IT SHORT
   _Description: Yes
 
 

In »po-debconf« 1.0 wurden spezielle Kommentare eingefu.gt, um mit Zeichenketten umzugehen, die aus mehreren Eintra.gen (wie bei Choices-Feldern) oder Absa.tzen (wie bei Description) bestehen. Mit diesen Direktiven haben Entwickler eine bessere Kontrolle daru.ber, was fu.r U.bersetzer sichtbar ist. Sie haben die Form »#flag:Direktive«; die Direktiven werden im Detail weiter unten beschrieben.

translate:Spezifikation, translate!:Spezifikation
Markiere nur einige Eintra.ge als u.bersetzbar; Spezifikation ist eine durch Kommata getrennte Liste von Zahlen, die angibt, welche Zeichenketten in PO-Dateien abgedruckt werden. Bereiche ko.nnen u.ber ein Minuszeichen angegeben werden (zum Beispiel »2-6«) und ein Stern (»*«) bedeutet alle Zeichenketten. Zum Beispiel wird mit
   Template: partman-basicfilesystems/fat_mountpoint
   Type: select
   #flag:translate:3,4
   __Choices: /dos, /windows, Enter manually, Do not mount it
   _Description: Mount point for this partition:
 
 

»Enter manually« und »Do not mount it« in PO-Dateien auftauchen, aber nicht »/dos« und »/windows«. Wenn das Schlu.sselwort translate von einem Ausrufezeichen gefolgt wird, gibt Spezifikation an, welche Zeichenketten fu.r die PO-Datei verworfen werden, alle anderen Zeichenketten werden abgedruckt. Das vorhergehende Beispiel ist a.hnlich zu

   Template: partman-basicfilesystems/fat_mountpoint
   Type: select
   #flag:translate!:1,2
   __Choices: /dos, /windows, Enter manually, Do not mount it
   _Description: Mount point for this partition:
 
 

Das gleiche Schlu.sselwort kann auch fu.r das Feld Description verwendet werden, um sicherzustellen, dass einige Zeichenketten nicht u.bersetzt werden.

   Template: partman-crypto/options_missing
   Type: error
   #flag:translate!:3
   _Description: Required encryption options missing
    The encryption options for ${DEVICE} are incomplete. Please
    return to the partition menu and select all required options.
    .
    ${ITEMS}
 
 

Dies ist allerdings gefa.hrlich, da aus den PO-Dateien Kontext entfernt werden ko.nnte, fu.gen Sie daher in diesem Fall Kommentare hinzu, so dass U.bersetzer nicht durcheinander gebracht werden.

comment:Spezifikation, comment!:Spezifikation
Der Kommentar direkt unterhalb dieser Direktive betrifft die Zeichenketten, die durch Spezifikation (siehe oben) angegeben werden. Standardma.βig wird ein Kommentar, der vor einem u.bersetzbaren Feld eingefu.gt wurde, bei allen Zeichenketten abgedruckt, die zu diesem Feld geho.ren (beachten Sie: bei »po-debconf« < 1.0 wurde der Kommentar nur bei der ersten Zeichenkette ausgegeben).
   Template: arcboot-installer/prom-variables
   Type: note
   # Translators, the 4th string of this description has been dropped
   # from PO files.  It contains shell commands and should not be
   # translated.
   #flag:comment:3
   # "Stop for Maintenance" should be left in English
   #flag:translate!:4
   _Description: Setting PROM variables for Arcboot
    If this is the first Linux installation on this machine, or if the
    hard drives have been repartitioned, some variables need to be set
    in the PROM before the system is able to boot normally.
    .
    At the end of this installation stage, the system will reboot.
    After this, enter the command monitor from the "Stop for
    Maintenance" option, and enter the following commands:
    .
       setenv OSLoader arcboot
       setenv OSLoadFilename Linux
    .
    You will only need to do this once.  Afterwards, enter the "boot"
    command or reboot the system to proceed to the next stage of the
    installation.
 
 

Im obigen Beispiel ist ein Kommentar ohne Direktive »#flag:comment«. Hier wird implizit »#flag:comment:*« hinzugefu.gt. Dieser Kommentar erscheint bei allen Zeichenketten, aber der Kommentar bezu.glich Stop for Maintenance wird nur vor der relevanten Zeichenkette abgedruckt.

partial
Dieses Schlu.sselwort teilt po2debconf mit, u.bersetzte Zeichenketten zu behalten, selbst wenn nicht alle Zeichenketten u.bersetzt wurden. Verwenden Sie dies bitte vorsichtig, dieses Schlu.sselwort wurde fu.r sehr spezielle Zwecke hinzugenommen.

U.BERSETZER VOR DEM UPLOAD INFORMIEREN

Normalerweise bemerken U.bersetzer auf Status-Webseiten (siehe unten), dass U.bersetzungen veraltet sind und schicken Patches, die dann in zuku.nftigen Uploads hinzugefu.gt werden. Entwickler werden aber ermutigt, die Betreuer von veralteten U.bersetzungen vor einem Upload um Aktualisierungen zu bitten, zum Beispiel eine Woche vorher. Ein spezielle Werkzeug - podebconf-report-po - wurde fu.r diesen Zweck geschrieben. Zo.gern Sie nicht, es zu missbrauchen!

WARNUNGEN

»Debconf« 1.2.0 erkennt Felder der Form Name-Sprache.Kodierung, z.B. »Description-de.ISO-8859-1« oder »Choices-ru.KOI8-R«. Standardma.βig schreibt po2debconf Vorlagendateien im neuen Format. A.ltere »debconf« werden diese Felder ignorieren und stattdessen wird englischer Text angezeigt. Lesen Sie po2debconf(1), um zu erfahren, wie Sie die Kodierung und das Ausgabeformat a.ndern ko.nnen.
Eine vorgegebene englische Zeichenkette darf nur eine eindeutige U.bersetzung in einer vorgegebenen Sprache haben. Es ist unmo.glich, abha.ngig vom Kontext zwei verschiedene U.bersetzungen zu geben. Um dieses Problem zu beheben, mu.ssen Sie spezielle Markierungen bei verschiedenem Auftreten einer gegebenen Zeichenkette hinzufu.gen, um diese Zeichenketten zu unterscheiden (dieses Markierungen werden nur von den U.bersetzern gesehen und werden aus der Zeichenkette entfernt, bevor diese dem Benutzer angezeigt wird).

Solche Markierungen mu.ssen am Ende der zu u.bersetzenden Zeichenkette hinzugefu.gt werden, sie mu.ssen mit »[ « (einer o.ffnenden Klammer, gefolgt von einem Leerzeichen) beginnen und mit »]« (schlieβende Klammer) enden, und du.rfen jedes Zeichen auβer Klammern oder Zeilenumbru.chen enthalten. Zum Beispiel ist »[ blahblah]« eine gu.ltige Markierung wa.hrend »[ bla[bla]bla]« nicht gu.ltig ist. Fu.r Anha.nger von regula.ren Perl-Ausdru.cken: Die Markierungen werden mittels folgender Regel erkannt (und entfernt):

   $msg =~ s/\[\s[^\[\]]*\]$//s;
 
 
Leerzeichen werden in »po-debconf« und »debconf-utils« leicht verschieden gehandhabt; bei letzterem werden Absa.tze neu formatiert, wenn U.bersetzungen aktualisiert und zusammengefu.hrt werden, daher ist »debconf-utils« sehr klug und Leerzeichen werden nicht als Teil der Zeichenketten betrachtet, wenn die unscharfen (XfuzzyX) Eintra.ge bestimmt werden (d.h. diejenigen, die der Aufmerksamkeit der U.bersetzer bedu.rfen, da sich das Original gea.ndert hat).

»po-debconf« auf der anderen Seite verla.sst sich auf »Gettext«, um unscharfe Eintra.ge zu erkennen, und behandelt Leerzeichen nicht als besondere Zeichen. Daher mu.ssen u.berflu.ssige Leerzeichen am Zeilenende in Master-Vorlagendateien entfernt werden, oder sie werden in PO- und POT-Dateien auftauchen.

Aus dem gleichen Grund, den nicht passenden Leerzeichen, kann debconf-gettextize Text als unscharf markieren, und U.bersetzer haben solche Zeichenketten manuell zu pru.fen/aktualisieren. Dies passiert nur einmal, wenn Vorlagen in das »po-debconf«-Format konvertiert werden, falls Sie nicht zufa.llige A.nderungen von Leerzeichen in den Master-Vorlagendateien vornehmen, die dann fu.r U.bersetzer sehr unangenehm wa.ren.

Normalerweise darf das Feld Default: nicht u.bersetzt werden, wenn der Vorlagentyp Select oder Multiselect ist. Unter seltenen Umsta.nden (z.B. bei der Auswahl der Standardsprache fu.r eine Anwendung) ko.nnen angepasste Werte von Bedeutung sein.

Der angepasste Wert darf nicht u.bersetzt werden, sondern muss aus den englischen Werten, die im Feld Choices aufgefu.hrt sind, ausgewa.hlt werden. Der beste Weg, um dies zu erreichen, besteht darin, ein Kommentar in Ihre Vorlagendatei einzufu.gen, der dann in die PO-Dateien kopiert wird.

   Template: geneweb/lang
   Type: select
   __Choices: Danish (da), Dutch (nl), English (en), Esperanto (eo)
   #  You must NOT translate this string, but you can change its value.
   #  The comment between brackets is used to distinguish this msgid
   #  from the one in the Choices list; you do not have to worry about
   #  them, and have to simply choose a msgstr among the English values
   #  listed in the Choices field above, e.g. msgstr "Dutch (nl)"
   _Default: English (en)[ default language]
   _Description: Geneweb default language
 
 

Der Standardwert erscheint dann auch in dem Feld Choices, und beide haben verschiedene U.bersetzungen: der erstere ist ein unu.bersetzter Wert, der aus den Choices-Werten ausgewa.hlt wird, wa.hrend der letztere eine normale U.bersetzung ist. Da »Gettext« nicht zwei verschiedene U.bersetzungen fu.r die gleiche msgid haben kann, mu.ssen sich beide msgids unterscheiden, in dem Kommentare in eckigen Klammern verwendet werden, wie dies im vorherigen Abschnitt beschrieben wurde.

Vor »po-debconf« 0.8.0 waren solche Kommentare nicht verfu.gbar und die Betreuer mussten das Feld _Default: durch _DefaultChoice: ersetzen, um solche Felder in PO-Dateien hervorzuheben:

   #. DefaultChoice
   msgid ""
   "English[ default: do not translate bracketed material, put your "
   "own language here but UNTRANSLATED.  If it is not in the list, "
   "put English (without bracketed material)]"
   msgstr ""
   "Swedish"
 
 

Einfache Kommentare in Vorlagendateien sind weniger fehlertra.chtig und sollten verwendet werden.

STATUS-WEBSEITEN

Statistiken fu.r »po-debconf«-U.bersetzungen sind unter <http://www.debian.org/intl/l10n/po-debconf/> (oder von Spiegeln) erha.ltlich; sie werden automatisch nach dem Hochladen von Paketen aktualisiert. Nur Pakete, die die Dateien debian/po/templates.pot und debian/po/POTFILES.in enthalten, werden betrachtet. Stellen Sie daher sicher, dass Ihr Quellpaket diese bereitstellt.

U.bersetzer ko.nnen sich von dort die PO- und POT-Dateien holen, sie mu.ssen aber immer mit dem vorherigen U.bersetzer Kontakt aufnehmen (deren E-Mail-Adresse in der PO-Datei gefunden werden kann) und/oder mit ihren Mitu.bersetzern auf debian-l10n-<Sprache>@lists.debian.org (falls eine solche Liste existiert), um sicherzustellen, dass keiner derzeit an der gleichen U.bersetzung arbeitet, und aktuelle Fehlerberichte fu.r das Paket lesen, das sie u.bersetzen wollen, um zu schauen, ob eine U.bersetzung bereits eingereicht wurde.

Nachdem sie diese Dateien u.bersetzt haben, sollten sie ihre Arbeit an den Betreuer mittels eines Fehlerberichts der Schwere wishlist mit der Markierung patch einreichen.

SIEHE AUCH

debconf-gettextize(1), debconf-updatepo(1), dh_installdebconf(1), podebconf-report-po(1). po2debconf(1).

AUTOREN

   Martin Quinson <Martin.Quinson@ens-lyon.fr>
   Denis Barbier <barbier@linuxfr.org>
 
 

U.BERSETZUNG

Die deutsche U.bersetzung wurde von Helge Kreutzmann <debian@helgefjell.de> angefertigt. Diese U.bersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 2 oder neuer fu.r die Kopierbedingungen. Es gibt KEINE HAFTUNG.