🌐 feat(i18n): overhaul translation system & add languages (#145)
Revamp the existing translation system, simplifying management and adding several new languages. The new system reads from TOML files in the `/i18n` directory and improves template structures. It also enhances customisation options and robustness by providing fallbacks and modularity. - Implement a new, streamlined translation macro. - Load translations from `/i18n` TOML files. - Remove redundant configuration requirements. - Refactor templates to align with new i18n system. - Add support for Hindi, Japanese, Russian, Portuguese, Chinese, Italian, German, Ukranian, Korean, and French languages. - Credit Thomas Weitzel (@thomasweitzel) for inspiration.
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
{% import "macros/add_comments.html" as macros_add_comments %}
|
||||
{% import "macros/cards_pages.html" as macros_cards_pages %}
|
||||
{% import "macros/content.html" as macros_content %}
|
||||
{% import "macros/create_history_url.html" as macros_create_history_url %}
|
||||
{% import "macros/format_date.html" as macros_format_date %}
|
||||
{% import "macros/list_posts.html" as macros_list_posts %}
|
||||
@@ -13,6 +12,15 @@
|
||||
{% import "macros/table_of_contents.html" as macros_toc %}
|
||||
{% import "macros/translate.html" as macros_translate %}
|
||||
|
||||
{# Load the internationalisation data for the current language from
|
||||
the .toml files in the user's '/i18n' folder, falling back to the theme's.
|
||||
This variable will hold all the text strings for the language #}
|
||||
{%- set language_strings = load_data(path="i18n/" ~ lang ~ '.toml', required=false) -%}
|
||||
{%- if not language_strings -%}
|
||||
{%- set language_strings = load_data(path="themes/tabi/i18n/" ~ lang ~ ".toml", required=false) -%}
|
||||
{%- endif -%}
|
||||
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html lang="{{ lang }}" {% if config.extra.default_theme -%}
|
||||
data-theme="{{config.extra.default_theme}}"
|
||||
|
Reference in New Issue
Block a user