MFde: New translation. Hook up the new chapter "fdp-primer/po-translations".

Obtained from:	The FreeBSD German Documentation Project
This commit is contained in:
Johann Kois 2015-09-04 18:49:22 +00:00
parent b66ad536aa
commit 470a2ec6ba
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=47369
4 changed files with 799 additions and 3 deletions

View file

@ -1,7 +1,7 @@
#
# $FreeBSD$
# $FreeBSDde$
# basiert auf: r42410
# basiert auf: r47339
#
# Build the FreeBSD Documentation Project Primer.
#
@ -32,6 +32,7 @@ SRCS+= xhtml-markup/chapter.xml
SRCS+= docbook-markup/chapter.xml
SRCS+= stylesheets/chapter.xml
SRCS+= translations/chapter.xml
SRCS+= po-translations/chapter.xml
SRCS+= writing-style/chapter.xml
SRCS+= editor-config/chapter.xml
SRCS+= see-also/chapter.xml

View file

@ -35,7 +35,7 @@
$FreeBSD$
$FreeBSDde$
basiert auf: r44895
basiert auf: r47339
-->
<book xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:lang="de">
<info><title>Die Fibel für neue Mitarbeiter des
@ -269,6 +269,7 @@ The time is 09:18</screen></entry>
&chap.docbook-markup;
&chap.stylesheets;
&chap.translations;
&chap.po-translations;
&chap.writing-style;
&chap.editor-config;
&chap.see-also;

View file

@ -9,7 +9,7 @@
$FreeBSD$
$FreeBSDde$
basiert auf: r42410
basiert auf: r47339
-->
<!ENTITY chap.overview SYSTEM "overview/chapter.xml">
@ -23,6 +23,7 @@
<!ENTITY chap.docbook-markup SYSTEM "docbook-markup/chapter.xml">
<!ENTITY chap.stylesheets SYSTEM "stylesheets/chapter.xml">
<!ENTITY chap.translations SYSTEM "translations/chapter.xml">
<!ENTITY chap.po-translations SYSTEM "po-translations/chapter.xml">
<!ENTITY chap.writing-style SYSTEM "writing-style/chapter.xml">
<!ENTITY chap.editor-config SYSTEM "editor-config/chapter.xml">
<!ENTITY chap.see-also SYSTEM "see-also/chapter.xml">

View file

@ -0,0 +1,793 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!--
The FreeBSD Documentation Project
$FreeBSD$
$FreeBSDde$
basiert auf: r47348
-->
<chapter xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0"
xml:id="po-translations">
<title><acronym>PO</acronym>-Übersetzungen</title>
<sect1 xml:id="po-translations-introduction">
<title>Einführung</title>
<para>Das <link
xlink:href="http://www.gnu.org/software/gettext/"><acronym>GNU</acronym>
<application>gettext</application></link>-System bietet
Übersetzern eine einfache Möglichkeit, Übersetzungen von
Dokumenten zu erstellen und zu verwalten. Übersetzbare Strings
werden dabei aus dem Originaldokument extrahiert und in eine
<acronym>PO</acronym>-Datei (Portable Object-Datei) gespeichert.
Übersetzte Versionen der Strings werden über einen zusätzlichen
Editor eingefügt. Diese Strings können danach direkt verwendet
werden oder zu einer kompletten Übersetzung des Originaldokuments
zusammengefügt werden.</para>
</sect1>
<sect1 xml:id="po-translations-quick-start">
<title>Schnellstart</title>
<para>Die Anleitung geht davon aus, das sie die Anweisungen in
<xref linkend="overview-quick-start"/> bereits ausgeführt haben,
allerdings müssen Sie noch zusätzlich die Option
<literal>TRANSLATOR</literal> im Port
<package role="port">textproc/docproj</package> aktivieren. War
diese Option bisher nicht aktiviert, öffnen Sie jetzt die
Konfiguration, aktivieren die Option und bauen den Port
anschließend neu.</para>
<screen>&prompt.root; <userinput>cd /usr/ports/textproc/docproj</userinput>
&prompt.root; <userinput>make config</userinput>
&prompt.root; <userinput>make clean deinstall install clean</userinput></screen>
<para>Das folgende Beispiel zeigt, wie Sie den kurzen Artikel
<link xlink:href="&url.articles.leap-seconds.en;">Leap
Seconds</link> auf Spanisch übersetzen.</para>
<procedure xml:id="po-translations-quick-start-install-po-editor">
<title>Installieren Sie einen <acronym>PO</acronym>-Editor</title>
<step>
<para>Sie benötigen einen <acronym>PO</acronym>-Editor, um die
Übersetzungsdateien zu bearbeiten. Dieses Beispiel verwendet
dafür <package role="ports">editors/poedit</package>.</para>
<screen>&prompt.root; <userinput>cd /usr/ports/editors/poedit</userinput>
&prompt.root; <userinput>make install clean</userinput></screen>
</step>
</procedure>
<procedure xml:id="po-translations-quick-start-initial-setup">
<title>Grundkonfiguration</title>
<para>Wenn Sie mit der Arbeit an einer bisher nicht existierenden
Sprache oder einem nicht existierenden Dokument beginnen wollen,
müssen Sie zuerst die Verzeichnisstruktur und ein
<filename>Makefile</filename> anlegen oder von der englischen
Originalversion kopieren:</para>
<step>
<para>Legen Sie ein Verzeichnis für die neue Übersetzung an.
Der Quellcode des englischen Artikel befindet sich unter
<filename>~/doc/en_US.ISO8859-1/articles/leap-seconds/</filename>.
Die spanische Übersetzung muss daher im Verzeichnis
<filename>~/doc/es_ES.ISO8859-1/articles/leap-seconds/</filename>
erstellt werden. Der Pfad ist also (abgesehen vom
sprachspezifischen Verzeichnis) identisch.</para>
<screen>&prompt.user; <userinput>svn mkdir --parents ~/doc/es_ES.ISO8859-1/articles/leap-seconds/</userinput></screen>
</step>
<step>
<para>Kopieren Sie das <filename>Makefile</filename> des
Originaldokuments in das Übersetzungsverzeichnis:</para>
<screen>&prompt.user; <userinput>svn cp ~/doc/en_US.ISO8859-1/articles/leap-seconds/Makefile \
~/doc/es_ES.ISO8859-1/articles/leap-seconds/</userinput></screen>
</step>
</procedure>
<procedure xml:id="po-translations-quick-start-translation">
<title>Übersetzung</title>
<para>Das Übersetzen eines Dokuments erfolgt in zwei Schritten,
zuerst werden die zu übersetzenden Strings aus dem
Originaldokument extrahiert, um sie anschließend zu
übersetzen. Diese beiden Schritte werden wiederholt, bis
ein brauchbares übersetztes Dokument entstanden ist.</para>
<step>
<para>Extrahieren Sie die zu übersetzenden Strings aus der
originalen englischen Version und speichern Sie diese
in einer <acronym>PO</acronym>-Datei:</para>
<screen>&prompt.user; <userinput>cd ~/doc/es_ES.ISO8859-1/articles/leap-seconds/</userinput>
&prompt.user; <userinput>make po</userinput></screen>
</step>
<step>
<para>Verwenden Sie einen <acronym>PO</acronym>-Editor, um
Ihre Übersetzungen in der <acronym>PO</acronym>-Datei zu
speichern. Dafür gibt es diverse Editoren, dieses Beispiel
verwendet <filename>poedit</filename> (das Sie über den
Port <package role="port">editors/poedit</package>
installieren können).</para>
<para>Der Name der <acronym>PO</acronym>-Datei setzt sich aus
einem zwei Zeichen langen Sprachcode, gefolgt von einem
Unterstrich sowie einem ebenfalls zwei Zeichen langen
Regionencode zusammen. Für eine Übersetzung ins Spanische
heißt die Datei daher <filename>es_ES.po</filename>.</para>
<screen>&prompt.user; <userinput>poedit es_ES.po</userinput></screen>
</step>
</procedure>
<procedure xml:id="po-translations-quick-generating-a-translated-document">
<title>Ein übersetztes Dokument erzeugen</title>
<step>
<para>Generieren Sie das übersetzte Dokument:</para>
<screen>&prompt.user; <userinput>cd ~/doc/es_ES.ISO8859-1/articles/leap-seconds/</userinput>
&prompt.user; <userinput>make tran</userinput></screen>
<para>Der Name der erzeugten Datei entspricht dem Namen
der englischen Originaldatei, normalerweise also
<filename>article.xml</filename> für Artikel oder
<filename>book.xml</filename> für Bücher.</para>
</step>
<step>
<para>Überprüfen Sie die erzeugte Datei, indem Sie sie
in <acronym>HTML</acronym> bauen und in einem
Internetbrowser öffnen:</para>
<screen>&prompt.user; <userinput>make FORMATS=html</userinput>
&prompt.user; <userinput>firefox article.html</userinput></screen>
</step>
</procedure>
</sect1>
<sect1 xml:id="po-translations-creating">
<title>Bisher nicht exisitierende Dokumente übersetzen</title>
<para>Der erste Schritt, um ein neues Dokument zu übersetzen, besteht
darin, ein Verzeichnis zu suchen oder zu erstellen, in dem die
Übersetzung gespeichert werden soll. &os; legt alle übersetzten
Dokumente in einem Unterverzeichnis ab, dessen Name sich aus der
Sprache und aus der Region in der Form
<filename><replaceable>lang</replaceable>_<replaceable>REGION</replaceable></filename>
zusammensetzt. <replaceable>lang</replaceable> ist ein Code,
der immer aus zwei Zeichen in Kleinbuchstaben besteht. Auf ihn
folgt ein Unterstrich und danach der Code für die
<replaceable>REGION</replaceable> (der aus zwei Zeichen in
Großbuchstaben besteht).</para>
<table xml:id="po-translations-language-names" frame="none">
<title>Existierende Sprachen</title>
<tgroup cols="5">
<thead>
<row>
<entry>Sprache</entry>
<entry>Region</entry>
<entry>Übersetzungsverzeichnis</entry>
<entry><acronym>PO</acronym>Dateiname</entry>
<entry>Zeichensatz</entry>
</row>
</thead>
<tbody>
<row>
<entry>Englisch</entry>
<entry>Vereinigte Staaten von Amerika</entry>
<entry><filename>en_US.ISO8859-1</filename></entry>
<entry><filename>en_US.po</filename></entry>
<entry><acronym>ISO</acronym> 8859-1</entry>
</row>
<row>
<entry>Bengalisch</entry>
<entry>Bangladesch</entry>
<entry><filename>bn_BD.UTF-8</filename></entry>
<entry><filename>bn_BD.po</filename></entry>
<entry><acronym>UTF</acronym>-8</entry>
</row>
<row>
<entry>Dänisch</entry>
<entry>Dänemark</entry>
<entry><filename>da_DK.ISO8859-1</filename></entry>
<entry><filename>da_DK.po</filename></entry>
<entry><acronym>ISO</acronym> 8859-1</entry>
</row>
<row>
<entry>Deutsch</entry>
<entry>Deutschland</entry>
<entry><filename>de_DE.ISO8859-1</filename></entry>
<entry><filename>de_DE.po</filename></entry>
<entry><acronym>ISO</acronym> 8859-1</entry>
</row>
<row>
<entry>Griechisch</entry>
<entry>Griechenland</entry>
<entry><filename>el_GR.ISO8859-7</filename></entry>
<entry><filename>el_GR.po</filename></entry>
<entry><acronym>ISO</acronym> 8859-7</entry>
</row>
<row>
<entry>Spanisch</entry>
<entry>Spanien</entry>
<entry><filename>es_ES.ISO8859-1</filename></entry>
<entry><filename>es_ES.po</filename></entry>
<entry><acronym>ISO</acronym> 8859-1</entry>
</row>
<row>
<entry>French</entry>
<entry>France</entry>
<entry><filename>fr_FR.ISO8859-1</filename></entry>
<entry><filename>fr_FR.po</filename></entry>
<entry><acronym>ISO</acronym> 8859-1</entry>
</row>
<row>
<entry>Ungarisch</entry>
<entry>Ungarn</entry>
<entry><filename>hu_HU.ISO8859-2</filename></entry>
<entry><filename>hu_HU.po</filename></entry>
<entry><acronym>ISO</acronym> 8859-2</entry>
</row>
<row>
<entry>Italienisch</entry>
<entry>Italien</entry>
<entry><filename>it_IT.ISO8859-15</filename></entry>
<entry><filename>it_IT.po</filename></entry>
<entry><acronym>ISO</acronym> 8859-15</entry>
</row>
<row>
<entry>Japanisch</entry>
<entry>Japan</entry>
<entry><filename>ja_JP.eucJP</filename></entry>
<entry><filename>ja_JP.po</filename></entry>
<entry><acronym>EUC</acronym> JP</entry>
</row>
<row>
<entry>Koreanisch</entry>
<entry>Korea</entry>
<entry><filename>ko_KR.UTF-8</filename></entry>
<entry><filename>ko_KR.po</filename></entry>
<entry><acronym>UTF</acronym>-8</entry>
</row>
<row>
<entry>Mongolisch</entry>
<entry>Mongolien</entry>
<entry><filename>mn_MN.UTF-8</filename></entry>
<entry><filename>mn_MN.po</filename></entry>
<entry><acronym>UTF</acronym>-8</entry>
</row>
<row>
<entry>Holländisch</entry>
<entry>Niederlande</entry>
<entry><filename>nl_NL.ISO8859-1</filename></entry>
<entry><filename>nl_NL.po</filename></entry>
<entry><acronym>ISO</acronym> 8859-1</entry>
</row>
<row>
<entry>Norwegisch</entry>
<entry>Norwegen</entry>
<entry><filename>no_NO.ISO8859-1</filename></entry>
<entry><filename>no_NO.po</filename></entry>
<entry><acronym>ISO</acronym> 8859-1</entry>
</row>
<row>
<entry>Polnisch</entry>
<entry>Polen</entry>
<entry><filename>pl_PL.ISO8859-2</filename></entry>
<entry><filename>pl_PL.po</filename></entry>
<entry><acronym>ISO</acronym> 8859-2</entry>
</row>
<row>
<entry>Portugisisch</entry>
<entry>Brasilien</entry>
<entry><filename>pt_BR.ISO8859-1</filename></entry>
<entry><filename>pt_BR.po</filename></entry>
<entry><acronym>ISO</acronym> 8859-1</entry>
</row>
<row>
<entry>Russisch</entry>
<entry>Russland</entry>
<entry><filename>ru_RU.KOI8-R</filename></entry>
<entry><filename>ru_RU.po</filename></entry>
<entry><acronym>KOI</acronym>8-R</entry>
</row>
<row>
<entry>Serbisch</entry>
<entry>Serbien</entry>
<entry><filename>sr_YU.ISO8859-2</filename></entry>
<entry><filename>sr_YU.po</filename></entry>
<entry><acronym>ISO</acronym> 8859-2</entry>
</row>
<row>
<entry>Türkisch</entry>
<entry>Türkei</entry>
<entry><filename>tr_TR.ISO8859-9</filename></entry>
<entry><filename>tr_TR.po</filename></entry>
<entry><acronym>ISO</acronym> 8859-9</entry>
</row>
<row>
<entry>Chinesisch</entry>
<entry>China</entry>
<entry><filename>zh_CN.UTF-8</filename></entry>
<entry><filename>zh_CN.po</filename></entry>
<entry><acronym>UTF</acronym>-8</entry>
</row>
<row>
<entry>Chinesisch</entry>
<entry>Taiwan</entry>
<entry><filename>zh_TW.UTF-8</filename></entry>
<entry><filename>zh_TW.po</filename></entry>
<entry><acronym>UTF</acronym>-8</entry>
</row>
</tbody>
</tgroup>
</table>
<para>Die Übersetzungen befinden sich in Unterverzeichnissen
des Hauptverzeichnisses der Dokumentation (in den Beispielen
von <xref linkend="overview-quick-start"/> ist dies
<filename>~/doc/</filename>). Die deutschen
Übersetzungen befinden sich daher beispielsweise unter
<filename>~/doc/de_DE.ISO8859-1/</filename>, französische
Übersetzungen hingegen unter
<filename>~/doc/fr_FR.ISO8859-1/</filename>.</para>
<para>Jede Sprache enthält Unterverzeichnisse für die
verschiedenen Dokumenttypen, also üblicherweise
<filename>articles/</filename> und
<filename>books/</filename>.</para>
<para>Kombiniert man diese Verzeichnisnamen, erhält man den
kompletten Pfad zu einem Artikel oder zu einem Buch. Die
französische Übersetzung des NanoBSD-Artikels ist daher etwa
unter <filename>~/doc/fr_FR.ISO8859-1/articles/nanobsd/</filename>
gespeichert, die mongolische Übersetzung des Handbuchs hingegen
unter
<filename>~/doc/mn_MN.UTF-8/books/handbook/</filename>.</para>
<para>Soll ein Dokument in eine bisher nicht existierende Sprache
übersetzt werden, muss zuerst ein sprachspezifisches Verzeichnis
erstellt werden. Existiert die Sprache hingegen schon, muss
nur ein Unterverzeichnis unterhalb von
<filename>articles/</filename> oder <filename>books/</filename>
angelegt werden (falls noch nicht vorhanden).</para>
<para>Der Bau der &os;-Dokumentation wird durch ein
<filename>Makefile</filename> gesteuert, das sich im gleichen
Verzeichnis wie die Übersetzung befindet. Für einfache Artikel
kann dieses <filename>Makefile</filename> oft unverändert aus
der englischen Originalversion übernommen werden. Der
Übersetzungsprozess für Bücher ist hingegen komplizierter, da
dabei verschiedene getrennte <filename>book.xml</filename> und
<filename>chapter.xml</filename>-Dateien in ein gemeinsames
Dokument integriert werden, das <filename>Makefile</filename>
für die Übersetzung eines Buches muss daher in der Regel immer
kopiert und angepasst werden.</para>
<example xml:id="po-translations-creating-example">
<title>Die spanische Übersetzung des Porter's Handbook
erstellen</title>
<para>Starten Sie die bisher nicht vorhandene spanische
Übersetzung des <link
xlink:href="&url.books.porters-handbook.en;">Porter's
Handbook</link>. Das originale Dokument ist ein Buch im
Verzeichnis
<filename>~/doc/en_US.ISO8859-1/books/porters-handbook/</filename>.</para>
<procedure>
<step>
<para>Das Verzeichnis für die spanische Übersetzung
(<filename>~/doc/es_ES.ISO8859-1/books/</filename>) existiert
bereits, daher müssen Sie nur ein Unterverzeichnis für das
Porter's Handbook anlegen:</para>
<screen>&prompt.user; <userinput>cd ~/doc/es_ES.ISO8859-1/books/</userinput>
&prompt.user; <userinput>svn mkdir porters-handbook</userinput>
A porters-handbook</screen>
</step>
<step>
<para>Kopieren Sie das <filename>Makefile</filename> des
Originalen Buchs in den neuen Ordner:</para>
<screen>&prompt.user; <userinput>cd ~/doc/es_ES.ISO8859-1/books/porters-handbook</userinput>
&prompt.user; <userinput>svn cp ~/doc/en_US.ISO8859-1/books/porters-handbook/Makefile .</userinput>
A Makefile</screen>
<para>Passen Sie das <filename>Makefile</filename> an,
damit es nur eine einzige <filename>book.xml</filename>
als Eingabe erwartet:</para>
<programlisting>#
# $FreeBSD$
#
# Build the FreeBSD Porter's Handbook.
#
MAINTAINER=doc@FreeBSD.org
DOC?= book
FORMATS?= html-split
INSTALL_COMPRESSED?= gz
INSTALL_ONLY_COMPRESSED?=
# XML content
SRCS= book.xml
# Images from the cross-document image library
IMAGES_LIB+= callouts/1.png
IMAGES_LIB+= callouts/2.png
IMAGES_LIB+= callouts/3.png
IMAGES_LIB+= callouts/4.png
IMAGES_LIB+= callouts/5.png
IMAGES_LIB+= callouts/6.png
IMAGES_LIB+= callouts/7.png
IMAGES_LIB+= callouts/8.png
IMAGES_LIB+= callouts/9.png
IMAGES_LIB+= callouts/10.png
IMAGES_LIB+= callouts/11.png
IMAGES_LIB+= callouts/12.png
IMAGES_LIB+= callouts/13.png
IMAGES_LIB+= callouts/14.png
IMAGES_LIB+= callouts/15.png
IMAGES_LIB+= callouts/16.png
IMAGES_LIB+= callouts/17.png
IMAGES_LIB+= callouts/18.png
IMAGES_LIB+= callouts/19.png
IMAGES_LIB+= callouts/20.png
IMAGES_LIB+= callouts/21.png
URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
SYMLINKS= ${DESTDIR} index.html handbook.html
.include "${DOC_PREFIX}/share/mk/doc.project.mk"</programlisting>
<para>Damit steht die Dokumentstruktur bereit und Sie können
die <acronym>PO</acronym>-Datei mit
<command>make po</command> erstellen.</para>
</step>
</procedure>
</example>
<example xml:id="po-translations-creating-example-french">
<title>Die französische Übersetzung des
<acronym>PGP</acronym> Keys-Artikels erstellen</title>
<para>Starten Sie die bisher nicht vorhandene Übersetzung des
<link xlink:href="&url.articles.pgpkeys.en;"><acronym>PGP</acronym>
Keys-Artikels</link>. Das englische Original ist ein Artikel,
der sich im Verzeichnis
<filename>~/doc/en_US.ISO8859-1/articles/pgpkeys/</filename>
befindet.</para>
<procedure>
<step>
<para>Das Verzeichnis für französische Artikel
(<filename>~/doc/fr_FR.ISO8859-1/articles/</filename>)
existiert bereits, Sie müssen daher nur ein neues
Unterverzeichnis für den <acronym>PGP</acronym> Keys-Artikel
anlegen:</para>
<screen>&prompt.user; <userinput>cd ~/doc/fr_FR.ISO8859-1/articles/</userinput>
&prompt.user; <userinput>svn mkdir pgpkeys</userinput>
A pgpkeys</screen>
</step>
<step>
<para>Kopieren Sie das <filename>Makefile</filename> des
originalen Artikels:</para>
<screen>&prompt.user; <userinput>cd ~/doc/fr_FR.ISO8859-1/articles/pgpkeys</userinput>
&prompt.user; <userinput>svn cp ~/doc/en_US.ISO8859-1/articles/pgpkeys/Makefile .</userinput>
A Makefile</screen>
<para>Überprüfen Sie das <filename>Makefile</filename>. Da es
sich um einen einfachen Artikel handelt, sind vermutlich
keine Änderungen am <filename>Makefile</filename> nötig.
Der Inhalt der dritten Zeile (<literal>$&os;...$</literal>)
wird durch das Versionskontrollsystem ersetzt werden, wenn
diese Datei committet wird.</para>
<programlisting>#
# $FreeBSD$
#
# Article: PGP Keys
DOC?= article
FORMATS?= html
WITH_ARTICLE_TOC?= YES
INSTALL_COMPRESSED?= gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.xml
# To build with just key fingerprints, set FINGERPRINTS_ONLY.
URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"</programlisting>
<para>Damit steht die Dokumentstruktur bereit und Sie können
die <acronym>PO</acronym>-Datei mit
<command>make po</command> erstellen.</para>
</step>
</procedure>
</example>
</sect1>
<sect1 xml:id="po-translations-translating">
<title>Übersetzen</title>
<para>Das <application>gettext</application>-System macht die
Übersetzung von Dokumenten einfacher, weil sich der Übersetzer
dadurch um weniger Dinge kümmern muss. Die zu übersetzenden
Strings werden aus dem Originaldokument in eine
<acronym>PO</acronym>-Datei extrahiert. Danach wird ein
<acronym>PO</acronym>-Editor verwendet, um die übersetzten
Strings einzugeben.</para>
<para>Das von &os; verwendete
<acronym>PO</acronym>-Übersetzungssystem überschreibt
<acronym>PO</acronym>-Dateien nicht, daher können die Strings
jederzeit extrahiert werden, um die
<acronym>PO</acronym>-Datei zu aktualisieren.</para>
<para>Ein <acronym>PO</acronym>-Editor wird zum Bearbeiten der
Datei benötigt. Die Beispiele in diesem Abschnitt verwenden
<package role="port">editors/poedit</package>, da es sich dabei
um einen einfach zu bedienenden Editor mit nur wenigen
Abhängigkeiten handelt. Es gibt aber auch diverse andere
<acronym>PO</acronym>-Editoren, die zusätzliche Funktionen
haben, die bei der Übersetzung von Dokumenten helfen. Die
Ports-Sammlung enthält verschiedene dieser Editoren,
beispielsweise <package
role="port">devel/gtranslator</package>.</para>
<para>Löschen Sie die <acronym>PO</acronym>-Datei auf keinen
Fall, da Sie alle Änderungen enthält, die Übersetzer
vorgenommen haben.</para>
<example xml:id="po-translations-translating-example">
<title>Die spanische Version des Porter's Handbook
übersetzen</title>
<para>Beginnen Sie mit der Übersetzung des spanischen
Porter's Handbook.</para>
<procedure>
<step>
<para>Wechseln Sie in das Verzeichnis des spanischen
Porter's Handbook und aktualisieren Sie die
<acronym>PO</acronym>-Datei (wie bereits in
<xref linkend="po-translations-language-names"/>
erwähnt, heißt diese Datei
<filename>es_ES.po</filename>.</para>
<screen>&prompt.user; <userinput>cd ~/doc/es_ES.ISO8859-1/books/porters-handbook</userinput>
&prompt.user; <userinput>make po</userinput></screen>
</step>
<step>
<para>Laden Sie die Datei in Ihren
<acronym>PO</acronym>-Editor und beginnen Sie mit
der Übersetzung:</para>
<screen>&prompt.user; <userinput>poedit es_ES.po</userinput></screen>
</step>
</procedure>
</example>
</sect1>
<sect1 xml:id="po-translations-tips">
<title>Tips für Übersetzer</title>
<sect2 xml:id="po-translations-tips-xmltags">
<title><acronym>XML</acronym>-Tags beibehalten</title>
<para>Achten Sie darauf, dass Sie keine <acronym>XML</acronym>-Tags
des englischen Originals verändern.</para>
<example>
<title><acronym>XML</acronym>-Tags beibehalten</title>
<para>Englisches Original:</para>
<programlisting>If <tag class="starttag">acronym</tag>NTP<tag class="endtag">acronym</tag> is not being used</programlisting>
<para>Spanische Übersetzung:</para>
<programlisting>Si <tag class="starttag">acronym</tag>NTP<tag class="endtag">acronym</tag> no se utiliza</programlisting>
</example>
</sect2>
<sect2 xml:id="po-translations-tips-spaces">
<title>Leerzeichen beibehalten</title>
<para>Achten Sie darauf, dass Sie Leerzeichen am Beginn und am
Ende der zu übersetzenden Strings beibehalten. Ihre
Übersetzung muss diese Strings ebenfalls enthalten.</para>
</sect2>
<sect2 xml:id="po-translations-tips-verbatim">
<title>Nicht zu übersetzende Tags</title>
<para>Die folgenden Tags dürfen nicht übersetzt werden:</para>
<itemizedlist xml:id="po-translations-tips-verbatim-list">
<listitem>
<para><tag class="starttag">citerefentry</tag></para>
</listitem>
<listitem>
<para><tag class="starttag">command</tag></para>
</listitem>
<listitem>
<para><tag class="starttag">filename</tag></para>
</listitem>
<listitem>
<para><tag class="starttag">literal</tag></para>
</listitem>
<listitem>
<para><tag class="starttag">manvolnum</tag></para>
</listitem>
<listitem>
<para><tag class="starttag">orgname</tag></para>
</listitem>
<listitem>
<para><tag class="starttag">package</tag></para>
</listitem>
<listitem>
<para><tag class="starttag">programlisting</tag></para>
</listitem>
<listitem>
<para><tag class="starttag">prompt</tag></para>
</listitem>
<listitem>
<para><tag class="starttag">refentrytitle</tag></para>
</listitem>
<listitem>
<para><tag class="starttag">screen</tag></para>
</listitem>
<listitem>
<para><tag class="starttag">userinput</tag></para>
</listitem>
<listitem>
<para><tag class="starttag">varname</tag></para>
</listitem>
</itemizedlist>
</sect2>
<!--
<sect2 xml:id="po-translations-tips-makefile">
<title>Modifying the <filename>Makefile</filename></title>
<para>What needs to be changed in the
<filename>Makefile</filename>?</para>
</sect2>
<sect2 xml:id="po-translations-tips-locale">
<title>Setting Locales for Editing</title>
<para>Locale settings so the <acronym>PO</acronym> editor works
correctly?</para>
</sect2>
<sect2 xml:id="po-translations-tips-poeditors">
<title>Settings for Specific <acronym>PO</acronym>
Editors</title>
<para>Per bcr: turn off "intelligent quotes" in
Mac poedit.</para>
</sect2>
<sect2 xml:id="po-translations-tips-tm">
<title>Using Translation Memory</title>
<para>Using translation memory. Saving, updating, sharing
with other members of a translation team.</para>
</sect2>
<sect2 xml:id="po-translations-tips-submitting">
<title>Submitting Translations</title>
<para>Submitting translations as diffs, committing
<acronym>PO</acronym> files.</para>
</sect2>
-->
</sect1>
<sect1 xml:id="po-translations-building">
<title>Ein übersetztes Dokument bauen</title>
<para>Eine übersetzte Version eines Originaldokuments kann
jederzeit erzeugt werden. Noch nicht übersetzte Teile des
Dokuments werden dabei in Englisch verbleiben. Die meisten
<acronym>PO</acronym>-Editoren zeigen Ihnen an, welcher
Anteil des Dokuments bereits übersetzt ist. Dies erleichtert
es dem Übersetzer zu beurteilen, ob sich der Bau des finalen
Dokuments bereits lohnt oder nicht.</para>
<example xml:id="po-translations-building-example">
<title>Die spanische Version des Porter's Handbook bauen</title>
<para>Bauen Sie die spanische Version des Porter's Handbooks, das
in einem früheren Beispiel erzeugt wurde und überprüfen Sie das
Ergebnis.</para>
<procedure>
<step>
<para>Bauen Sie das Dokument. Da das Original vom Typ Buch
(<emphasis>book</emphasis>) ist, heißt das erzeugte Dokument
<filename>book.xml</filename>.</para>
<screen>&prompt.user; <userinput>cd ~/doc/es_ES.ISO8859-1/books/porters-handbook</userinput>
&prompt.user; <userinput>make tran</userinput></screen>
</step>
<step>
<para>Erzeugen Sie aus der <filename>book.xml</filename> eine
<acronym>HTML</acronym>-Version des Dokuments und lassen Sie
sich das Ergebnis in <application>Firefox</application>
anzeigen. Für die englische Dokumentation gehen Sie analog
vor. Eine Liste aller verfügbaren Werte für die Variable
<varname>FORMATS</varname> findet sich im FDP-Primer.
<!-- See <xref
linkend="doc-build-rendering-common-formats"/>.--></para>
<screen>&prompt.user; <userinput>make FORMATS=html</userinput>
&prompt.user; <userinput>firefox book.html</userinput></screen>
</step>
</procedure>
</example>
</sect1>
</chapter>