You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pulsar.apache.org by GitBox <gi...@apache.org> on 2022/09/27 01:21:07 UTC

[GitHub] [pulsar] tisonkun edited a discussion: Archive Crowdin based translation initiative

GitHub user tisonkun edited a discussion: Archive Crowdin based translation initiative

## Motivation

Three years ago we created the [pulsar-translation](https://github.com/apache/pulsar-translation) repository to try to handle documentation translation with Crowdin.

However, after three years, few (if not none) contents gets translated:

> **NOTE**: I learned that we ever translated a few pages but since we bring all documents to the new website framework those contents lost and it needs one more turn to pick up all translations.

<img width="1728" alt="image" src="https://user-images.githubusercontent.com/18818196/191883024-498d920a-7397-4a2d-869c-e56e5ed98225.png">

As we migrate the official site to the new framework, several incompatibility issues occur between Crowdin and MDX files. Basically, MDX is far more fruitful to insert JSX code or widget, like:

```
:::tip

blablabla

:::
```

Crowdin treats `tip` here as a translatable item and mangles the result.

@urfreespace can have more inputs on this kind of issue that can break the website build. And after [a failed full build yesterday](https://github.com/apache/pulsar-site/actions/runs/3103382004) we already [redirect all "i18n" pages to the default language](https://github.com/apache/pulsar-site/blob/607cee490f9cfb8de6fce918204742a1b7704b78/content/.htaccess#L5-L6).

Generally, an initiative without further contributors and no maintainer to shepherd can be archived instead of leaving alone.

## Proposal

Crowdin is good for document workers that they will be familiar with. But most translation contributors should be developers for our project, just like [Flink](https://github.com/apache/flink/tree/master/docs/content.zh). For these people, Git is over Crowdin.

Also, Crowdin itself doesn't complete the whole i18n story. Technically, we use [Docusaurus's i18n functionality](https://docusaurus.io/docs/i18n/introduction#translation-files-location) and generate files under `i18n` folders from Crowdin inputs with [homemade scripts](https://github.com/apache/pulsar-site/blob/1d116a036ce26a3321b3089b8a5406cddebda777/site2/tools/build-site.sh#L40-L68).

So, we can use Docusaurus's i18n support barely as [how InLong does](https://github.com/apache/inlong-website/tree/master/i18n/zh-CN) to overcome these issues.

## Implementation

1. Remove the scaffolding integrating with Crowdin. cc @urfreespace 
2. Archive the pulsar-translation repo as it's no longer valid.
3. (Optionally) If we have a new initiative to do translation, follow the raw Docusaurus's i18n support.

## Risk

No risk as these translations currently simply don't work.

## Appendix

Docusarus does provide [support to integrate with Crowdin and talk about MDX workaround](https://docusaurus.io/docs/i18n/crowdin#mdx-solutions). But it's less than awesome while we don't need Crowdin in the first place. Also, this workaround cannot resolve the case that we write descriptions needing translation in the MDX block, like prompts for Tabs.

cc @tuhaihe @urfreespace @michaeljmarshall @dave2wave

GitHub link: https://github.com/apache/pulsar/discussions/17810

----
This is an automatically sent email for dev@pulsar.apache.org.
To unsubscribe, please send an email to: dev-unsubscribe@pulsar.apache.org