diff --git a/.github/scripts/translate.py b/.github/scripts/translate.py new file mode 100644 index 0000000..441a422 --- /dev/null +++ b/.github/scripts/translate.py @@ -0,0 +1,29 @@ +from googletrans import Translator + +def translate_readme(input_text, target_lang): + translator = Translator() + translated = translator.translate(input_text, dest=target_lang) + translated_text = translated.text + + # add hint for automatically translation + translated_text = f"This is an automatically translated file. Original content in [German](https://github.com/tuxbox-neutrino/buildenv/blob/3.2.4/README-de.md):\n\n{translated_text}" + + # replace [Build Image](#Build-Image) with [Build Image](#build-image), Use this workaround, because translater breaks this anchor + translated_text = translated_text.replace("[Build Image](#Build Image)", "[Build Image](#build-image)") + + # fix broken links + translated_text = translated_text.replace("devtool -reference.html", "devtool-reference.html") + translated_text = translated_text.replace("dev-manual -common-tasks.html", "dev-manual-common-tasks.html") + + return translated_text + +if __name__ == "__main__": + input_text = open("README-de.md", "r").read() + target_lang = "en" # target language is english + translated_text = translate_readme(input_text, target_lang) + + with open("README-en.md", "w") as outfile: + outfile.write(translated_text) + + + diff --git a/.github/workflows/readme.yml b/.github/workflows/readme.yml new file mode 100644 index 0000000..24b2136 --- /dev/null +++ b/.github/workflows/readme.yml @@ -0,0 +1,42 @@ +name: Translate README + +on: + push: + branches: + - 3.2.4 + paths: + - 'README-de.md' + +permissions: + contents: write + +jobs: + translate: + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v2 + + - name: Setup Python + uses: actions/setup-python@v2 + with: + python-version: 3.x + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install --upgrade googletrans==3.1.0a0 + + - name: Translate README + run: | + python .github/scripts/translate.py + + - name: Commit and push translated README + run: | + git config --global user.email "actions@github.com" + git config --global user.name "GitHub Actions" + git add README-en.md + git commit -m "readme: Automatically translated README to English" + git push +