Benutzerdefinierte Sprachdatei

Um dieses Tutorial zu nutzen, benötigen Sie Dateisystem- und Kommandozeilenzugriff auf den Server, auf dem OTRS läuft.

Bemerkung

Diese Funktion ist nur für On-Premise-Kunden verfügbar. Wenn Sie ein Managed-Kunde sind, wird diese Funktion vom Customer Solutions Team in OTRS betreut. Bitte kontaktieren Sie uns über support@otrs.com oder im OTRS Portal.

OTRS kann in andere Sprachen als Englisch lokalisiert werden. Die Sprachdateien werden in .pm-Dateien unter dem $OTRS_HOME/Kernel/Language/-Ordner gespeichert. Es gibt drei Arten von Sprachdateien:

Framework-Sprachdatei

Die Dateien, die nach einem Sprachcode und einem optionalen Dialektcode, getrennt durch einen Unterstrich, benannt sind (zum Beispiel de.pm für die deutsche Sprachdatei oder en_CA.pm für die kanadisch-englische Sprachdatei), enthalten die Übersetzung des Kernsystems. Diese Dateien sind Teil des freigegebenen Pakets und werden von Zeit zu Zeit mit den Übersetzungen aus dem OTRS Translation Portal aktualisiert.

Bearbeiten Sie diese Dateien nicht manuell. Sie werden beim nächsten Versions-Update überschrieben.

Paket-Sprachdatei

Pakete wie ITSM-Pakete oder Feature-Pakete haben eigene Sprachdateien, die folgende Namenskonvention verwenden: Sprachcode und optionaler Dialektcode gefolgt vom Paketnamen, getrennt durch Unterstrichzeichen (z.B. de_OTRSServiceManagement.pm für die deutsche Sprachdatei oder en_CA_OTRSServiceManagement.pm für die kanadisch-englische Sprachdatei des OTRSServiceManagement Pakets).

Bearbeiten Sie diese Dateien nicht manuell. Sie werden beim nächsten Versions-Update überschrieben.

Benutzerdefinierte Sprachdatei

Benutzerdefinierte Sprachdateien sind nicht Teil des Systems. Sie müssen sie manuell erstellen und in den Sprachordner legen. Der Name der benutzerdefinierten Sprachdatei sollte aus einem Sprachcode und einem optionalen Dialektcode bestehen, gefolgt von dem Wort Custom, getrennt durch einen Unterstrich (z.B. de_Custom.pm für die deutsche benutzerdefinierte Sprachdatei oder de_CA_Custom.pm für die kanadisch-englische benutzerdefinierte Sprachdatei). Da diese Datei nicht Teil des Release-Pakets ist, wird sie bei Versions-Updates nicht überschrieben.

In einem System, in dem alle Arten von Sprachdateien vorhanden sind, wird zuerst die Framework-Sprachdatei geladen, dann werden die Paket-Sprachdateien in alphabetischer Reihenfolge geladen und schließlich die benutzerdefinierte Sprachdatei. Dadurch wird sichergestellt, dass die Übersetzungen aus der benutzerdefinierten Sprachdatei alle vorherigen Übersetzungen überschreiben können.

Es gibt zwei Arten der Verwendung der benutzerdefinierten Sprachdatei:

  1. So fügen Sie die Übersetzung zu Systemressourcen hinzu, die nach der Installation erstellt oder geändert wurden.

  2. So passen Sie die vorhandene Übersetzung an.

Während der Konfigurationsphase des Systems können die erstellten oder geänderten Ressourcen neue übersetzbare Zeichenfolgen wie Namen, Beschreibungen oder beliebige andere Attribute der folgenden Ressourcen enthalten:

Es wird empfohlen, für die oben genannten Ressourcen immer englische Texte zu verwenden und sie mit Hilfe der benutzerdefinierten Sprachdatei zu übersetzen, auch wenn das System für die Verwendung in einer bestimmten Sprache vorgesehen ist.

Wenn die Ressourcen dem System hinzugefügt wurden, müssen Sie die übersetzbaren Zeichenfolgen manuell erfassen und der benutzerdefinierten Sprachdatei hinzufügen.

Dieses Beispiel zeigt ein System, in dem ein neues dynamisches Dropdown-Feld mit übersetzbaren Optionen und ein neuer Ticket-Status hinzugefügt wurden. Zusätzlich wurde eine bestehende Übersetzung geändert.

Die deutsche Sprachdatei sollte wie folgt aussehen:

# --
# Copyright (C) YEAR, https://your-company.com/
# --
# This software comes with ABSOLUTELY NO WARRANTY. For details, see
# the enclosed file COPYING for license information (GPL). If you
# did not receive this file, see https://www.gnu.org/licenses/gpl-3.0.txt.
# --

package Kernel::Language::de_Custom;

use strict;
use warnings;
use utf8;

sub Data {
    my $Self = shift;

    # School dynamic field options
    $Self->{Translation}->{'middle school'} = 'Mittelschule';
    $Self->{Translation}->{'high school'} = 'Oberschule';
    $Self->{Translation}->{'University'} = 'Universität';

    # Ticket state
    $Self->{Translation}->{'closed with workaround'} = 'provisorisch geschlossen';

    # Override existing translation
    $Self->{Translation}->{'Internal News'} = 'Firmennachrichten';

    push @{ $Self->{JavaScriptStrings} // [] }, (
    );

    return;
}

1;

Der erste Abschnitt enthält Copyright- und Lizenzinformationen. Da OTRS unter der GNU GPL Version 3 lizenziert ist, wird empfohlen, die gleiche Lizenz auf die benutzerdefinierte Sprachdatei anzuwenden. Vergessen Sie nicht, das Jahr und den Copyright-Inhaber in der zweiten Zeile zu ändern.

Der nächste Abschnitt enthält den Paketpfad, der der relative Pfad zum OTRS-Stammverzeichnis sein sollte, und den Namen der benutzerdefinierten Sprachdatei ohne Dateierweiterung. Im obigen Beispiel ist dies Kernel::Language::de_Custom. Wenn Sie die benutzerdefinierte Sprachdatei für eine andere Sprache erstellen, müssen Sie das Sprachpräfix im letzten Segment des Pfades ändern.

Der wichtigste Abschnitt sind die Übersetzungseinträge. Jeder Eintrag enthält die englische Zeichenkette als Schlüssel und die Übersetzung der Zielsprache als Wert. Es wird empfohlen, die Einträge zu gruppieren und einen Kommentar hinzuzufügen (eine Zeile, die mit dem Zeichen # beginnt), der erklärt, woher die Zeichenketten stammen. Dies erleichtert die Pflege der benutzerdefinierten Sprachdatei.

Es ist möglich, die bestehende Übersetzung des Frameworks zu überschreiben. In unserem Beispiel überschreiben wir die deutsche Übersetzung von Interne Nachrichten mit Firmennachrichten anstelle des Originals Interne Nachrichten. Um dies zu tun, müssen Sie die Originalzeichenkette in der deutschen Sprachdatei (de.pm) suchen, dann die Originalzeichenkette in die benutzerdefinierte Sprachdatei kopieren und eine andere Übersetzung hinzufügen.

Jedes beliebige Zeichen kann in den Zeichenketten enthalten sein, aber das Apostrophzeichen muss wie das Zeichen don't als Escape-Zeichen verwendet werden, da dieses Zeichen als einschließendes Zeichen verwendet wird.

Die Sprachdateien für die neue Schnittstelle sind jetzt Teil der erstellten Anwendung (statisches JSON). Wenn Sie dem Dateisystem eine benutzerdefinierte Sprachdatei hinzufügen, müssen Sie die Anwendung neu erstellen, damit die Änderung berücksichtigt wird. Um den Neuaufbau auszulösen, starten Sie den Server mit der Option --deploy-assets neu:

otrs> /opt/otrs/bin/otrs.WebServer.pl --deploy-assets

Während des Build-Prozesses werden die Sprachdateien erneuert und berücksichtigen jede *_Custom.pm.

Nach oben scrollen