rust-embedded / book

Documentation on how to use the Rust Programming Language to develop firmware for bare metal (microcontroller) devices
https://docs.rust-embedded.org/book/
Apache License 2.0
1.08k stars 173 forks source link

Is there a procedure required to translate the repository into another language? #350

Open DownyBehind opened 1 year ago

DownyBehind commented 1 year ago

I already read #326.

I wonder if it is okay to proceed with the procedure left by @eldruin on the issue. #326

I want to translate it into Korean.

thank you.

eldruin commented 1 year ago

Yes, that is still the right procedure. We might do something like having po files at some point in the future since that approach has now appeared but that requires some time to get right and I for one would not have the time to do it.

DownyBehind commented 1 year ago

Thank you for your reply. Then, as I said, I will add a link after translating it into Korean.

almightychang commented 1 year ago

How is it going though? Are you still on translation??

eldruin commented 1 year ago

@romancardenas and I are translating this book into Spanish through transifex, which works pretty nicely. Let me know if you want me to start a translation into Korean or any other language.

DownyBehind commented 1 year ago

@almightychang I stopped translating for a while because of my other work, but I will do it again soon. But there seems to have been a lot of talk. By the way, are you interested in Korean translation?

@eldruin Do I have to translate in a new way instead of the way you mentioned before (making the translation into github page and adding Link to master branch)?

eldruin commented 1 year ago

We are strongly considering taking the approach in #356 and thus we started with a test with a Spanish translation. We still do not know how it will work out, though.

DownyBehind commented 1 year ago

@eldruin Then can I proceed with the Korean translation in that way? Or should I wait until you guys finish the test?

eldruin commented 1 year ago

Sorry @DownyBehind, I wanted to discuss this in our weekly meeting again but have been unable to so far. I will try again tomorrow. I do not want to waste your time and effort so please hold on for a bit until we try the new approach out. My status is that we have a roughly 50% Spanish translation here (about 10% of the snippets are not translatable / not worth translation like console outputs). So far the translation experience has been pretty smooth.

DownyBehind commented 1 year ago

@eldruin Thank you for your answer. Then I'll be waiting for the results of your new attempts

mgeisler commented 1 year ago

My status is that we have a roughly 50% Spanish translation here (about 10% of the snippets are not translatable / not worth translation like console outputs). So far the translation experience has been pretty smooth.

Hi @eldruin, just for my curiosity: are you using Transifex to translate a PO file generated with mdbook-i18n-helpers? I used Transifex ~10 years ago for this — but perhaps the platform now also supports translating Markdown files directly?

If you do use mdbook-i18n-helpers, you should be aware of https://github.com/google/mdbook-i18n-helpers/pull/46. The main branch already has a much better text extraction system than what is released in version 0.1.0. The PR linked has a normalization tool which can will let you convert existing PO files (generated by version 0.1.0) to the new format. The new format removes the Markdown syntax. As an example, # Foo becomes "Foo" in the PO file and the text for tables is extracted on a cell-by-cell basis.

I hope this is useful!

mgeisler commented 1 year ago

I've released version 0.2 of mdbook-i18n-helpers — this includes the much better text extraction which will unwrap paragraphs and remove unnecessary Markdown syntax in the translation files. The normalization tool is also included so that you can keep existing translations intact (if you have any, we have ~18 for Comprehensive Rust). Please let me know of any problems you might run into! Thanks :slightly_smiling_face: