jkois 2010-09-07 18:23:54 UTC
FreeBSD German Documentation Repository
Modified files:
books/developers-handbook/l10n chapter.sgml
Log:
MFen 1.14 noop
+ Markup-Fixes.
Revision Changes Path
1.13 +52 -52 de-docproj/books/developers-handbook/l10n/chapter.sgml
Index: chapter.sgml
===================================================================
RCS file: /home/cvs/de-docproj/books/developers-handbook/l10n/chapter.sgml,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -I$FreeBSDde.*$ -r1.12 -r1.13
--- chapter.sgml 18 Feb 2010 20:27:20 -0000 1.12
+++ chapter.sgml 7 Sep 2010 18:23:54 -0000 1.13
@@ -3,8 +3,8 @@
The FreeBSD German Documentation Project
$FreeBSD$
- $FreeBSDde: de-docproj/books/developers-handbook/l10n/chapter.sgml,v 1.12 2010/02/18 20:27:20 fboerner Exp $
- basiert auf: 1.13
+ $FreeBSDde: de-docproj/books/developers-handbook/l10n/chapter.sgml,v 1.13 2010/09/07 18:23:54 jkois Exp $
+ basiert auf: 1.14
-->
<chapter id="l10n">
@@ -87,7 +87,7 @@
</sect2>
</sect1>
-
+
<sect1 id="posix-nls">
<sect1info>
<authorgroup>
@@ -98,21 +98,21 @@
</author>
</authorgroup>
</sect1info>
-
+
<title>Lokalisierte Nachrichten mit POSIX.1 Native Language
Support (NLS)</title>
-
+
<para>Über die Basisfunktionen von I18N hinaus, wie das Bereitstellen
von verschiedenen Eingabecodierungen oder die diversen nationalen
Konventionen, zum Beispiel die verschiedenen Dezimalpunkte, ist es
auf einem höheren Level von I18N möglich, die Ausgabe
von Programmen zu lokalisieren. Ein Weg dies zu tun besteht in der
Nutzung der POSIX.1 NLS-Funktionen von &os;.</para>
-
+
<sect2 id="nls-catalogs">
<title>Organisation von lokalisierten Mitteilungen in Katalog
Dateien</title>
-
+
<para>POSIX.1 NLS basiert auf Katalogdateien, welche die lokalisierten
Mitteilungen in der entsprechenden Codierung enthalten. Die
Mitteilungen sind in Sets organisiert und jede Mitteilung ist
@@ -123,7 +123,7 @@
ungarischen Mitteilungen für das ISO8859-2 Encoding in
einer Datei mit dem Dateinamen <filename>hu_HU.ISO8859-2</filename>
gespeichert.</para>
-
+
<para>Diese Katalogdateien sind normale Textdateien, welche die
nummerierten Mitteilungen enthalten. Es ist möglich
Kommentare in die Dateien zu schreiben, indem Sie ein
@@ -133,15 +133,15 @@
direkt nach dem <literal>$</literal>-Zeichen folgen muss. Dem
Schlüsselwort <literal>set</literal> folgt dann die Set-Nummer.
Ein Beispiel:</para>
-
+
<programlisting>$set 1</programlisting>
-
+
<para>Der aktuelle Mitteilungseintrag startet mit der
Mitteilungsnummer gefolgt von der lokalisierten Nachricht. Die
bekannten Modifikatoren von &man.printf.3; werden akzeptiert:</para>
-
+
<programlisting>15 "File not found: %s\n"</programlisting>
-
+
<para>Die Katalogdateien müssen in binärer Form vorliegen,
bevor sie von einem Programm benutzt werden können. Dies wird
mit dem &man.gencat.1; Tool durchgeführt. Das erste Argument
@@ -150,13 +150,13 @@
Mitteilungen können auf mehrere Katalogdateien aufgeteilt
sein. Danach werden dann alle auf einmal mit dem &man.gencat.1;
Tool kompiliert.</para>
-
+
</sect2>
-
+
<sect2 id="nls-using">
<title>Nutzung der Katalogdateien im Quellcode</title>
-
- <para> Das Benutzen der Katalogdateien ist einfach. Um die
+
+ <para> Das Benutzen der Katalogdateien ist einfach. Um die
relevante Funktion zu nutzen, muss <filename
class="headerfile">nl_types.h</filename> in die Quelldatei
eingefügt werden. Bevor ein Katalog benutzt werden
@@ -173,31 +173,31 @@
wobei <literal>locale</literal> die gesetzte Lokale und
<literal>catname</literal> der Katalogname ist. Der zweite
Parameter ist eine Konstante, die zwei Werte haben kann:</para>
-
+
<itemizedlist>
<listitem>
-
+
<para><literal>NL_CAT_LOCALE</literal>, hat die Bedeutung,
dass die benutzte Katalogdatei auf
<envar>LC_MESSAGES</envar> basiert.</para>
-
+
</listitem>
-
+
<listitem>
-
+
<para><literal>0</literal>, hat die Bedeutung, dass
<envar>LANG</envar> benutzt wird, um die Katalogdatei
zu öffnen.
</para>
-
+
</listitem>
</itemizedlist>
-
+
<para>Der &man.catopen.3; Aufruf gibt einen Katalogidentifizierer
vom Type <literal>nl_catd</literal> zurück. Sehen Sie in der
Manualpage nach, um eine Liste mit möglichen Fehlercodes
zu erhalten.</para>
-
+
<para>Nach dem Öffnen eines Katalogs, kann &man.catgets.3;
benutzt werden, um Mitteilungen zu erhalten. Der erste
Parameter ist der Katalogidentifizierer, der von
@@ -206,39 +206,39 @@
vierte ist eine Fallbackmitteilung, die angezeigt wird,
falls die gewünschte Mitteilung in der Katalogdatei
nicht verfügbar ist.</para>
-
+
<para>Nach der Nutzung der Katalogdatei, muss sie mit dem
Kommando &man.catclose.3;, geschlossen werden. Es besitzt
ein Argument, die Katalog ID.</para>
-
+
</sect2>
-
+
<sect2 id="nls-example">
<title>Ein Beispiel aus der Praxis</title>
-
+
<para>Das folgende Beispiel zeigt einen einfachen Weg wie man
NLS-Kataloge flexibel nutzen kann.</para>
-
+
<para>Die nachfolgenden Zeilen müssen in eine allgemeine
Headerdatei, die in allen Quelldateien vorhanden ist, die
lokalisierte Mitteilungen benutzen, eingefügt werden:</para>
-
+
<programlisting>
#ifdef WITHOUT_NLS
#define getstr(n) nlsstr[n]
#else
#include <nl_types.h>
-
+
extern nl_catd catalog;
#define getstr(n) catgets(catalog, 1, n, nlsstr[n])
#endif
-
+
extern char *nlsstr[];
</programlisting>
-
+
<para>Als nächstes fügen Sie die folgenden Zeilen
in den globalen Deklarationsteil der Hauptquelldatei ein:</para>
-
+
<programlisting>
#ifndef WITHOUT_NLS
#include <nl_types.h>
@@ -255,10 +255,10 @@
/* 2*/ "some other message"
};
</programlisting>
-
+
<para>Als nächstes kommt der Code der den Katalog
öffnet, liest und schließt:</para>
-
----------------------------------------------
Diff block truncated. (Max lines = 200)
----------------------------------------------
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-cvs-doc" in the body of the message
Received on Tue 07 Sep 2010 - 20:24:11 CEST