From 0e8ddb88e906c70dde18870758d068474814a701 Mon Sep 17 00:00:00 2001 From: sa6anw Date: Fri, 18 Jul 2025 08:48:21 +0000 Subject: [PATCH] i18n --- .drone.yml | 17 ++++++----------- clean_language_blocks.py | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 11 deletions(-) create mode 100644 clean_language_blocks.py diff --git a/.drone.yml b/.drone.yml index bbff582..7beb50d 100644 --- a/.drone.yml +++ b/.drone.yml @@ -7,20 +7,15 @@ clone: depth: 0 steps: -- name: split-languages +- name: clean-language-blocks image: python:3.11 commands: - pip install -U pip - - python split_lang.py - - mkdir -p docs_sv/assets docs_sv/overrides docs_sv/stylesheets - - cp -r docs/assets docs_sv/assets || true - - cp -r docs/overrides docs_sv/overrides || true - - cp -r docs/stylesheets docs_sv/stylesheets || true - - rm -rf docs - - mv docs_sv docs - - mkdir -p docs/en - - cp -r docs_en/* docs/en/ || true - + - python clean_language_blocks.py + - mkdir -p docs/assets docs/overrides docs/stylesheets + - cp -r docs_en/assets docs/assets || true + - cp -r docs_en/overrides docs/overrides || true + - cp -r docs_en/stylesheets docs/stylesheets || true - name: build image: squidfunk/mkdocs-material:7.1.9 diff --git a/clean_language_blocks.py b/clean_language_blocks.py new file mode 100644 index 0000000..a6bbc97 --- /dev/null +++ b/clean_language_blocks.py @@ -0,0 +1,38 @@ +import os +import re +import shutil + +SOURCE_DIR = "docs" +ENGLISH_DIR = "docs_en" + +# Kopiera alla filer från docs/ till docs_en/ +if os.path.exists(ENGLISH_DIR): + shutil.rmtree(ENGLISH_DIR) +shutil.copytree(SOURCE_DIR, ENGLISH_DIR) + +def clean_file(path, keep_lang): + with open(path, "r", encoding="utf-8") as f: + content = f.read() + + # Ta bort språkblock som inte ska vara kvar + if keep_lang == "sv": + content = re.sub(r":::\s*en\n.*?\n:::", "", content, flags=re.DOTALL) + elif keep_lang == "en": + content = re.sub(r":::\s*sv\n.*?\n:::", "", content, flags=re.DOTALL) + + # Ta bort alla ::: lang-taggar + content = re.sub(r":::\s*(sv|en)", "", content) + content = re.sub(r":::", "", content) + + with open(path, "w", encoding="utf-8") as f: + f.write(content.strip() + "\n") + +# Rensa svenska versioner +for filename in os.listdir(SOURCE_DIR): + if filename.endswith(".md"): + clean_file(os.path.join(SOURCE_DIR, filename), keep_lang="sv") + +# Rensa engelska versioner +for filename in os.listdir(ENGLISH_DIR): + if filename.endswith(".md"): + clean_file(os.path.join(ENGLISH_DIR, filename), keep_lang="en") \ No newline at end of file