Skip to content

initial steps towards I18n of tutorial docs#3238

Open
mt-caret wants to merge 10 commits intoocaml:mainfrom
mt-caret:i18n
Open

initial steps towards I18n of tutorial docs#3238
mt-caret wants to merge 10 commits intoocaml:mainfrom
mt-caret:i18n

Conversation

@mt-caret
Copy link

@mt-caret mt-caret commented Aug 3, 2025

As a first step towards supporting multi-lingual guides, I've added "language" as a new frontmatter tag, and threaded it through dream so that we can dispatch to different markdown files based on language.

I've also added a language selector which shows up when there are multiple language choices, and added a Japanese translation of a single markdown file (data/tutorials/getting-started/1_00_install_OCaml.ja.md) as something to start us off (and also to demonstrate the functionality).
Screenshot 2026-02-08 at 11 31 50 AM
Screenshot 2026-02-08 at 11 31 59 AM

Future steps:

  • translate the rest of the guides to Japanese
  • set up some automated job which triggers on updates to English markdown files to propose updates to the Japanese versions via LLMs.

@mt-caret mt-caret marked this pull request as ready for review February 8, 2026 03:35
@mt-caret
Copy link
Author

mt-caret commented Feb 9, 2026

@sabine @cuihtlauac hey both, apologies for the long delay in the PR: please let me know if there's anything missing here (context, explanations, changes etc.)!

@Octachron
Copy link
Member

Were there some discussions about adding localizations to ocaml.org ?
On the principle, I agree that it would be great to have high quality and up-to-date translations ocaml.org's documentation.

However, my memories from the version v2 website is that without a dedicated translation team this is unsustainable: the translated documentation ends up being out-of-date fast, and when an occasional contributor proposes a translation improvement, the maintainers are in the awkward situation of making translation decision on language that they are not fluent in.

@mt-caret
Copy link
Author

mt-caret commented Feb 9, 2026

Were there some discussions about adding localizations to ocaml.org ?

Yeah, I chatted with @sabine and @cuihtlauac in the past about this, and they seemed somewhat happy with the proposed changes. We initially were thinking of putting some material on https://ocaml.jp, but they seemed eager to have as much content on https://ocaml.org instead.

However, my memories from the version v2 website is that without a dedicated translation team this is unsustainable: the translated documentation ends up being out-of-date fast, and when an occasional contributor proposes a translation improvement, the maintainers are in the awkward situation of making translation decision on language that they are not fluent in.

A thing I'm considering doing next is to set up a job that periodically checks changes to the original text and submits PRs with LLM-suggested translation changes to the Japanese version. While this doesn't completely eliminate the problem of needing someone who understands the language to review it, my prior is that this does reduce the burden quite a lot.[1] How does this sound to you?

[1]: Just to make it a bit explicit, I'm happy to feel responsible to be the point person to review Japanese translations in the future.

@Octachron
Copy link
Member

I can see the usefulness of LLM as an internal tool for translators to generate a first draft. Using it as an automated process feels less useful because this would be slowly reverting the quality of the translation to the baseline translation than any user can achieve with the automatic tools provided by their browser.

Typically, my impression is that it might be more useful to have a good integration with a CAT tool (that generally comes with workflows for maintaining up-to-date translations in a way which is ergonomic for non-developers).

@cuihtlauac
Copy link
Collaborator

cuihtlauac commented Feb 9, 2026

What's the relationship between this and #3489?

@mt-caret
Copy link
Author

mt-caret commented Feb 12, 2026

Hey, sorry for the delay in the reply here. This PR only translates a single page over, whereas the #3489 translates the remainder of the getting started pages. It's still a work in progress, though, which is why it's still in a draft state.

@mt-caret
Copy link
Author

mt-caret commented Mar 8, 2026

@cuihtlauac Hi, gentle ping on this! It'd be great to figure out if we're happy proceeding with this work or not, and I'm more than happy to discuss more if that'll help.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants