Sprachpakete

Aus MoodleDocs
Wechseln zu:Navigation, Suche

Baustelle.png Diese Seite muss überarbeitet werden. Greif zu!
Wenn du dich um diesen Artikel kümmern willst, dann kennzeichne das, indem du die Vorlage {{Überarbeiten}} durch die Vorlage {{ÜberarbeitenVergeben}} ersetzt.
Wenn du mit deiner Arbeit fertig bist, dann entferne die Vorlage aus dem Artikel.
Danke für deine Mitarbeit!


Sprachpakete installieren

Moodle ist in mehr als 100 Sprachen verfügbar. Diese werden als Sprachpakete für die Installation bereitgestellt. Als Administrator/in können Sie auf der Seite Website-Administration (oder im Block Einstellungen) > Website-Administration) > Sprache > Sprachpakete die Sprachpakete Ihrer Moodle-Site verwalten. Wählen Sie ein oder mehrere Pakete aus der rechten Liste aus und klicken Sie auf den Button Sprachpaket installieren.

Sie können mehrere Sprachpakete gleichzeitig auswählen (Strg-Taste) und installieren.

Selbst wenn Sie mehr als 20 Sprachpakete installieren hat das kaum Einfluss auf die Geschwindigkeit von Moodle.

Sie können ein oder mehrere Sprachpakete gleichzeitig deinstallieren. Wählen Sie die entsprechenden Pakete in der Liste der installierten Sprachpakete aus und klicken Sie auf den Button Ausgewählte(s) Sprachpaket(e) deinstallieren.

Sprachpakete manuell herunterladen

Die Sprachpakete werden ständig weiter entwickelt. Wenn eine neue Moodle-Version neue Funktionalitäten bereitstellt, dann werden auch im Sprachpaket entsprechend neue Einträge hinzugefügt. Auf der Seite https://download.moodle.org/langpack/x.y/ können Sie die Sprachpakete herunterladen. Die Seite zeigt auch an, wie weit die Übersetzung der jeweiligen Sprachpakets fortgeschritten ist.

Eltern-Sprachpakete und Kind-Sprachpakete

Sprachpakete können eine hierarchische Beziehung haben: Einige Sprachpakete (die sogenannten Kind-Pakete) enthalten nur einen Teil der Texte, und zwar diejenigen, in denen sie sich von ihrem Eltern-Paket unterscheiden. Ein Beispiel ist das deutsche Sprachpaket "de", das alle Texte in der "Sie"-Variante enthält. Davon abgeleitet ist das Kind-Paket "de_du", das nur die modifizierten Texte in der "Du"-Variante enthält. Wenn Sie ein Kind-Paket verwenden möchten, müssen Sie immer auch das zugehörige Eltern-Paket installieren. Es gibt folgende Kind-Sprachpakete:

  • ca_valencià (erfordert ca)
  • de_du, de_kids und de_comm (erfordern de)
  • en_us, en_ar, en_kids (erfordern en)
  • es_ve (erfordert es)
  • es_ve, es_co (erfordert es)
  • es_mx_kids (erfordert es_mx)
  • fil (erfordert fi)
  • fr_ca (erfordert fr)
  • he_kids (erfordert he)
  • ja_kids (erfordert ja)
  • lt_uni (erfordert lt)
  • no_gr (erfordert no)
  • sv_fi (erfordert sv)
  • wo (erfordert fr)

Hinweis: Wenn Ihre Moodle-Site ein Kind-Sprachpaket verwendet (siehe Liste) und Sie den Filter Mehrsprachiger Inhalt verwenden, müssen Sie sorgfältig mit der Nutzung umgehen (siehe MDL-55197). Siehe Mehrsprachiger Inhalt für mehr Details und Beispiele.

Manuelle Installation der Sprachpakete

Im Allgemeinen ist es am einfachsten, die Sprachpakete direkt über die Moodle-Oberfläche uzu installieren. Sie können ein Sprachpaket aber auch manuell installieren, indem Sie die entsprechende *.zip Datei von https://download.moodle.org/langpack/x.y herunterladen und im Verzeichnis moodledata/lang entpacken.

Aktualisierung des Sprachpakets

  • Sprachpakete können auf der Seite Website-Administration (oder im Block Einstellungen) > Website-Administration) > Sprache > Sprachpakete aktualisiert werden.
  • Sie können sehen, für welche Sprachpakete Aktualisierungen vorliegen: Diese Pakete sind sowohl im Bereich Installierte Sprachpakete als auch im Bereich Verfügbare Sprachpakete aufgelistet.
  • Um die Pakete zu aktualisieren, klicken Sie auf den Button Sprachpakete aktualisieren.
  • Wenn Sie auf Moodle-Sites, die viele Sprachpakete installiert haben, nur einige Sprachpakete aktualisieren möchten, dann wählen Sie diese in der rechten Spalte Verfügbare Sprachpakete aus und klicken Sie auf den Button Ausgewähltes Sprachpaket installieren.
  • Das englische Sprachpaket wird bei der Aktualisierung von Moodle automatisch aktualisiert.
  • Da an allen Sprachpaketen regelmäßig gearbeitet wird, sollten Sie sie auch in regelmäßigen Abständen aktualisieren.

Die Aktualisierung der Sprachpakete wird als geplanter Vorgang gehandhabt. Standardmäßig wird dieser Vorgang täglich durchgeführt.

Language pack failure to update

  • Language packs can not be updated if your Moodle hosting company sets cURL to use IP6.
  • You can find the description of the problems and the fix in this forum thread, this and this other forum threads.
  • Basically, the symptom is this in the Available language packs area:
(Failed to connect to 2400:cb00:2048:1::6814:ef: Network is unreachable)
  • And this fix is add this to your lib/filelib.php file in the right place where curl is set (around line 1250 in M 3.1).
$options['CURLOPT_IPRESOLVE'] = CURL_IPRESOLVE_V4;

Moodle can not connect to download.moodle.org

This can happen if:

  • You configured over-zealous security restrictions in your server. Check that your server can contact the download.moodle.org server.
  • The download.moodle.org server is down and if you try to manually download the language pack, it fails too. Please try again later.
  • Your internet service is faulty :(

Datei:ERROR language import not available.png

Blick hinter die Kulissen

Eine Standardinstallation von Moodle enthält nur das englische Sprachpaket. Es ist im Verzeichnis moodledata/lang/en gespeichert.

Die englischen Sprachelemente ("Strings") für die Kernfunktionalität von Moodle (wie z.B. Administration, Rollen, usw.) sind im Verzeichnis moodledata/lang/en gespeichert. Sprachdateien, die zu einzelnen Aktivitäten, Blöcken oder anderen Plugins gehören, sind im Unterverzeichnis lang des jeweiligen Plugins (also zusammen mit den anderen Code-Dateien des Plugins) gespeichert. Wenn Sie also die englischen Sprach-Strings der Aktivität Forum ansehen wollen, dann müssen Sie im Verzeichnis moodle/mod/forum/lang/en nachsehen.

Wenn Sie zusätzlich zum englischen Sprachpaket ein weiteres Sprachpaket installieren (z.B. das deutsche Sprachpaket), dann erzeugt Moodle ein Verzeichnis moodledata/lang/de. Im Unterschied zum englischen Sprachpaket finden Sie dort jedoch alle Sprachdateien, also z.B. auch die Datei moodledata/lang/en/forum.php für die Aktivität Forum.

Alle Sprachdateien haben die Endung .php. Sie enthalten sogenannte "Strings" - das sind kurze Bezeichnungen, z.B.

addnewcourse

. Wenn im Code (z.B. in einem Formular) dieser String auftaucht, dann wird er bei der Anzeige der Moodle-Seite durch den jeweiligen Text aus dem gewählten Sprachpaket ersetzt. Auf der Moodle-Seite wird dann anstelle von

addnewcourse

der Text

Neuen Kurs anlegen

angezeigt. Die Übersetzung kann Platzhalter

{$a}

enthalten. Diese stehen für Variablen aus dem Programmcode. Diese Platzhalter werden bei der Anzeige der Moodle durch den aktuellen Wert der Variablen ersetzt.

Auszug aus einer Sprachdatei:

  $string['addnewcourse'] = 'Neuen Kurs anlegen';
  $string['hidesection'] = 'Abschnitt {$a} verbergen';

Wenn ein String nicht übersetzt ist, dann erscheint auf der Moodle-Seite der englische Originaltext zu diesem String.

Can I personalize language strings per theme?

Not directly, but you can use new local (child) language packs to achieve different courses behaviours/looks

Changing the look of a course

You can have a course with a different theme 'and' a different child language pack. You will then have personalized language strings in the only course that uses that particular theme.

Changing the behaviour of a course

  • If you do not want a student to see any reference to grades when he/she finishes a lesson, by editing the correct text string, it is possible to replace "Your score is 9 (out of 10)" with "Be sure to get your certificate". Or change "Congratulations - end of lesson reached" to "We hoped this lesson helped you". See how to change the end of lesson page display.
  • You can have several different courses, each using a different (child) language pack and each one showing personalized language strings.
  • See this forum post for detailed instructions on how to create your new child languages.

Can I install one particular language pack and supplement the missing translations using a second (related) language pack?

Can I make a language pack for kids?

  • Yes.
  • The current existing language packs for kids are:
    • de_kids (which require de)
    • en_kids (which require the default en)
    • he_kids (which requires he)
    • ja_kids (which requires ja)
  • If you want to make a language pack for kids in a language different from the ones listed above, use the following method:
    • Install the (en_kids) English for kids language pack in your local Moodle server
    • You will have to edit 10 files (which are stored in the moodledata/lang/en_kids folder).
    • You can use Notepad++ or any other text editor, but avoid using MS Word or MS Notepad.
  • Start with langconfig.php and choose your main language as the parentlanguage
  • When you have finished translating all the strings, you can request a new language pack to the person administering all Moodle language packs.
  • Upload into AMOS the 10 files in your moodledata/lang/en_kids folder
  • Remember to keep updating and expanding your new language pack

Why do some languages have several different language packs available?

See the developer's documentation about this.

Why has my language pack suddenly forgotten some translations?

See the following image showing (Insignias) a properly translated Spanish language string (green rectangle) and an unstranslated English language string (red rectangle) for 'Badges' plus a mixture of translated and untranslated strings with a language pack that should have 100% of the core strings translated.

Language packs mixed-up llanguages shown.png

If you try to update your language packs you will get a message indicating 'Update of 'xxxx_old' language pack skipped.

Something old language pack can not be updated.png

Read the following section for the cause and the fix.

Why do I have a language pack named xx_old' that I never installed?

Sometimes you may find (see image below) that your server has, in addition to your usual language packs (eg, en, es_mx), an odd-named language pack with an _old name ending (eg, es_mx_old), that -obviously- can not be updated.

  • This came from an incomplete automated language pack update because the lang pack update fails in the middle of the process.
    • The update first renames the existing lang directory so that it has the _old suffix and then it tries to unzip the new one.
    • If unzipping is successful, the old directory is removed.
    • Check that the ZIP PHP extension is OK in the Environment.
    • If your server has languages other than English, the language packs update process will need to download all the corresponding language packs, which will take some time. If you have a low speed internet provider, you could get a script timeout error. To prevent this, you will need to edit the server/php/php.ini file and change the line that has 'max_execution_time = 30' into 'max_execution_time = 600'.
  • There may also be a language pack that has mixed languages, like 'English (es_mx)', that obviously can not be.

Odd-named installed language pack.png

  • The reason why the language menu shows it is because moodledata/lang/es_mx/ is incomplete and its langconfig.php is missing so the translation of the string "thislanguage" (name of it) falls back to the default English.
  • You must uninstall all strange-looking language packs and re-install your usual language packs.

Language packs uninstall all mixed-up languages.png

Siehe auch