Administratoren (deutsche Übersetzung der Seite PmWiki.Internationalizations, Stand 2009-01-30)

PmWiki unterstützt die Internationalisierung von Netzseiten, erlaubt etwa Buchstaben mit Akzent oder Umlauten in Seitennamen und bietet fast vollständige Anpassungsmöglichkeiten für PmWiki-Meldungen. Die meisten Anpassungen werden von PmWiki mittels der Funktion XLPage() zu Verfügung gestellt, die einen Satz von Übersetzungsvariablen aus einer Wikiseite (üblicherweise XLPage genannt, die Seite kann aber beliebig umbenannt werden) lädt.

Laden von Übersetzungs-Seiten

Seiten in vielen Sprachen?, darunter Französisch, Deutsch, Holländisch und Spanisch, wurden in der pmwiki.com Website bereits erstellt und gepflegt. Du kannst ein Archiv dieser Übersetzungen von http://pmichaud.com/pub/pmwiki/i18n/ herunterladen. Entpacke einfach das Archiv in das Verzeichnis, das Deine pmwiki.php-Installation enthält. Das Archiv enthält eine Reihe von Dateien, die im wikilib.d/-Verzeichnis abgespeichert werden, sowie einige spezielle Skripte für Übersetzungen, die andere Zeichensätze als iso-8859-1 (standardmäßig von PmWiki verwendet) benutzen.

Für eine deutsche Installation reicht es, die Dateien PmwikiDe.* in das Verzeichnis wikilib.d zu entpacken und hochzuladen.

Nach dem Installieren der Übersetzungs-Seiten aktivierst Du eine bestimmte Sprache, indem Du einen Aufruf von XLPage() in Deine config.php einfügst. Beispielsweise erfolgt das Auswählen der deutschsprachigen Meldungen mittels

    XLPage('de','PmWikiDe.XLPage');

diese Anweisung lädt die deutschen Übersetzungen ('de') von der Seite PmWikiDe.XLPage. Es ist problemlos möglich, mehrere Übersetzungsseiten zu laden. Wenn Du also eigene Übersetzungen nutzen willst, ohne die aus dem i18n-Archiv zu verändern, erzeuge einfach eine neue Seite (siehe unten) und lade sie hinterher. Deine eigenen Übersetzungen müssen zuerst geladen werden, um Vorrang zu haben:

    
    XLPage('de','PmWikiDe.XLPageLokal');  # meine eigenen Übersetzungen
    XLPage('de','PmWikiDe.XLPage');       # aus i18n.tgz
    

Wenn Du in Deinem Wiki mehrere Sprachversionen anbieten und Wikigruppen zur Auswahl der Sprache verwenden willst, benötigst Du etwas Code in der Anpassungsdatei der Gruppe (siehe Individuelle Einstellungen pro Gruppe). Wenn Dein Wiki z.B. deutsche und englische Bereiche enthält, und die deutschen Seiten in der Gruppe De sind, kannst Du eine Datei De.php im Verzeichnis local/ mit folgendem Inhalt erstellen:

<?php if (!defined('PmWiki')) exit();
##wechsle zu deutschen Meldungen
XLPage('de','PmWikiDe.XLPage');

Es bietet sich in diesem Fall an, auch eine Datei PmwikiDe.php gleichen Inhalts zu erstellen, um auch für die deutsche Dokumentation von PmWiki die deutschen Sprachanpassungen zu verwenden.

Als Alternative zur Anpassungsdatei "pro Gruppe" ist auch folgender Code in der config.php möglich, der testet, ob eine XLPage in der Gruppe der angeforderten Seite ist und sie dann lädt:

    
$xlpage = FmtPageName('$Group.XLPage', $pagename);
if (PageExists($xlpage)) XLPage($xlpage, $xlpage);

danach kannst Du die entsprechende XLPage in jede Gruppe kopieren, die die entsprechende Sprachunterstützung haben soll.

Siehe auch (englisch) Cookbook:MultiLanguage

Neue Übersetzungen erstellen

Wenn für die von Dir gewünschte Sprache keine Übersetzungsseiten existieren, ist es einfach, selbst welche zu erstellen! Eine XLPage-Übersetzungsdatei ist eine Datei, die einfach Zeilen der folgenden Form enthält:

   'Ausdruck' => 'übersetzter Ausdruck',

Dabei ist 'Ausdruck' eine internationalisierte Phrase (durch $[phrase] markiert in PmWiki's $...Fmt Variablen und "übersetzter Ausdruck" ist das, was in Deiner speziellen Sprache auf den Bildschirm kommt. Beispielsweise wandelt die Zeile (in PmWikiDe.XLPage)

'Search' => 'Suchen',

"$[Search]" bei der Ausgabe in "Suchen" um. Die Datei PmWiki:XLPageTemplate ist ein guter Ausgangspunkt, um eine neue XLPage-Datei zu erstellen und hat die meisten der PmWiki-Phrasen bereits aufgelistet. Beachte, dass der Übersetzungsmechanismus nur Phrasen übersetzt, die in den $...Fmt-Ausdrücken (der verschiedenen .php-Skripte) als übersetzbar gekennzeichnet sind -- es werden keine Wörter übersetzt, die in den Wiki-Formatierungsanweisungen auftauchen.

Wenn Du neue Versionen von PmWiki-Seiten in anderen Sprachen bildest, erwäge bitte, sie zu den originalen PmWiki-Seiten hinzuzufügen, so dass sie mittels des i18n-Archives auch anderen zugänglich gemacht werden!

Anmerkung: Der Ausdruck "i18n" wird üblicherweise als Abkürzung für das englische Wort "internationalization" verwendet. Die Abkürzung kommt daher, dass zwischen dem ersten "i" und dem abschließenden "n" in "internationalization" genau 18 Buchstaben stehen -- und nur wenige PC-Nutzer all diese 18 Buchstaben extra tippen wollen.

Sonderzeichen in WikiLinks ermöglichen

Um Sonderzeichen in WikiLinks zu ermöglichen, muss die "locale"-Einstellung des Servers richtig eingestellt werden, damit PmWiki den passenden Zeichensatz verwendet.

Falls das wegen beschränktem Zugriff auf die Serverkonfiguration (Hosting) nicht möglich ist, kann PmWiki so eingestellt werden, daß eine bestimmte "locale"-Einstellung aus den XLPage Optionen verwendet wird (siehe XLPageTemplate?).

Für deutsche Umlaute ist zum Beispiel erforderlich:

die erforderliche "locale" Einstellung kann vom Betriebssystem und der spezifischen Installation abhängen.

Auf der enlischen Version dieser Seite finden sich weitere Anmerkungen und eine FAQ.

<< Wikistile anpassen | Dokumentationsindex | Lokale Einstellungen >>