Sharing an Early-Stage Tampermonkey Plugin for Translating the Typst Web App for Non-English Users

Background

  1. Current Situation:
  • Typst’s official web app currently only supports English.
  • Chinese users relying on browser translation tools may encounter inaccuracies with technical terminology.
  1. Existing Solutions:
    Community-driven Chinese documentation exists but no systematic localization solution for the app’s UI is available.
  2. Project Goal:
    This experimental Tampermonkey script aims to provide basic interface localization.

Current Status (Early Prototype)

Implemented Features:

  • Static text replacement (menus, buttons, etc.) using key-value pairs.


Known Limitations:

  • :x: Translation coverage is incomplete.
  • :x: More languages are not supported.

Collaboration Invitation

If you’re interested in improving Typst’s accessibility for Non-English speaking users, contributions are welcome.

4 Likes

There you go: Improve script metadata by Andrew15-5 · Pull Request #1 · Yourouchour/Typst-Automatic-Translation · GitHub, Add JavaScript/Markdown formatting by Andrew15-5 · Pull Request #2 · Yourouchour/Typst-Automatic-Translation · GitHub.

1 Like

Thank! They are very necessary.

1 Like

Now it looks good (although there are still many untranslated places).

2

I feel like it will still be hard to push someone to use the script as you have to install a random extension first. And then the script. Although script installation can be automated to some extent.

I guess with enough yapping skills, it’s not that hard. It just accumulates if you were barely able to convince someone to try it out, and now you ask them to install some random extension for script injections and a random unofficial script. Yeah, well, at least this is the worst case scenario.

And separately, to be able to effectively translate the docs, if at all, a linter should be used to detect unused/unmatched entries due to docs changes. It will help a ton with maintaining the translations that have been already done. On top of that, would be nice to have a newly generated entries for automating this. The last piece of puzzle would be the translation itself. It might be done with automatic machine translation, though this can quickly decrease the quality of said translation. Of course, better have some clunky translation than none at all. Maybe.