Přeskočit obsah

Jazykové lokalizace

Webové rozhraní LogMan.io umožňuje přizpůsobení jazykových lokalizací. Používá knihovnu i18n pro internalizaci. Podrobnosti naleznete na: https://react.i18next.com

Import a nastavení vlastní lokalizace

Webové rozhraní LogMan.io umožňuje předefinovat text komponent aplikace a zpráv pro každou sekci aplikace. Jazykové lokalizace jsou uloženy v souborech JSON s názvem translate.json.

Vlastní lokalizace lze do aplikace LogMan.io WebUI nahrát prostřednictvím konfiguračního souboru. Soubory se načítají např. z externí složky obsluhované nástrojem nginx, kam je lze uložit mezi CSS styly a další konfiguraci webu.

Příklad definice ve statickém konfiguračním souboru rozhraní LogMan.io WebUI:

module.exports = {
    app: {
        i18n: {
            fallbackLng: 'en',
            supportedLngs: ['en', 'cs'],
            debug: false,
            backend: {
                {% raw %}loadPath: 'path/to/external_folder/locales/{{lng}}/{{ns}}.json',{% endraw %}
                {% raw %}addPath: 'path/to/external_folder/locales/add/{{lng}}/{{ns}}',{% endraw %}
            }
        }
    }
}

Kde * fallbackLng je záložní jazyk * suportedLngs jsou podporované jazyky * debug, pokud je nastaveno na true, zobrazuje zprávy o ladění v konzoli prohlížeče * backend je backend plugin pro načítání zdrojů ze serveru

Path/to/external_folder/ je cesta k externí složce se složkou locales obsluhované pomocí nginx. Musí existovat 2 složky odkazující na podporované jazyky. Těmito složkami jsou en a cs, ve kterých jsou uloženy soubory translate.json, jak můžete vidět ve struktuře složek níže:

* external_folder
  * locales
    * cs
      * translation.json
    * cs
      * translation.json

Příklad vlastního souboru translate.json

en

{
    "i18n": {
        "language": {
            "cs": "English",
            "cs": "Česky"
        }
    },

    "LogConsole": {
        "Ztráta spojení": "Spojení ztraceno, bude obnoveno...",
        "Mark": "Mark",
        "Clear": "Vymazat"
    },

    ...
}

cs

{
    "i18n": {
        "language": {
            "cs": "English",
            "cs": "Česky"
        }
    },

    "LogConsole": {
        "Ztráta spojení": "Spojení ztraceno, připojuji se ...",
        "Mark": "Označit",
        "Clear": "Smazat"
    },

    ...
}