Übersetzungen

Ein großer Teil dieses Projekts ist die Unterstützung von Übersetzungen. Es ist in viele Teile des Prozesses integriert. Die Standardmethode zur Angabe eines Strings in HTML sieht so aus: ${i18Next.t("Text to translate")}.

Sobald eine Übersetzung mit i18Next definiert ist, gibt es 3 mögliche Wege, wie die Übersetzung behandelt werden kann.

  1. Manual - Die Lokalisierungsdateien (*.json Dateien) werden mit den zu übersetzenden Schlüsseln aktualisiert, umgeben von [[ und ]]. Dies soll eine manuelle Übersetzung nach Ihrem Geschmack ermöglichen. Sie können auch die Eingabeaufforderung "translateManualFile.md" verwenden, um Hilfe zu erhalten.
  2. GoogleTranslate - Dies verwendet die Google Translate API, um Elemente zu übersetzen. Dies ist tendenziell eine der günstigeren und zuverlässigeren Optionen, die ich gesehen habe. Die einzige Einschränkung, auf die ich gestoßen bin, ist, dass es verschiedene Pluralformen nicht gut behandelt. Daher müssen Sie möglicherweise OpenAI oder manuelle Übersetzungen für alles verwenden, das i18Nexts Pluralisierungsfunktion nutzt.
  3. OpenAI - Dies verwendet die OpenAI API, um Elemente zu übersetzen. Dies ist die teuerste Option, die ich gesehen habe. Es ist auch die flexibelste. Es kann verschiedene Pluralformen gut verarbeiten. Es kann auch komplexere Sätze bearbeiten. Es ist auch am wahrscheinlichsten in der Lage, neue Sprachen zu unterstützen.

Die Einstellung, welche Übersetzung verwendet werden soll, ist in Ihrer build.ts und der Eigenschaft translationSource für den staticSiteBuild Aufruf definiert.