comprehensive-rust icon indicating copy to clipboard operation
comprehensive-rust copied to clipboard

Translate the std library String type into Vietnamese

Open vohoanglong0107 opened this issue 9 months ago • 12 comments

I couldn't find an effective way to translate Trait and implement, so both terms are going to be used as is in the translation.

vohoanglong0107 avatar May 04 '24 13:05 vohoanglong0107

@qu-ngx I'm quite unsure about translating implement and trait, as there are no Vietnamese terms that accurately express them. The closest translation I could think of for implement is kế thừa, but it's more related to the OOP term inherit than implement.

vohoanglong0107 avatar May 06 '24 22:05 vohoanglong0107

@qu-ngx I'm quite unsure about translating implement and trait, as there are no Vietnamese terms that accurately express them. The closest translation I could think of for implement is kế thừa, but it's more related to the OOP term inherit than implement.

Implement is also áp dụng, thi hành, trang bị, .... Trait aka đặc điểm, tính trạng, trạng thái. If you are not so sure, I think you can use some English dictionary (ie Meriam Webster) for the synonyms. English has many different shades so it is not tied to only one meaning at all.

qu-ngx avatar May 06 '24 22:05 qu-ngx

@qu-ngx Also, when translating type name, such as String, I believe translate String the first time it appearse is good, but it shouldn't be translated in subsequent appearances, as it can have cause confusion. For example, in Rust &str and String can be translated as Xâu in Vietnamese, but using only Xâu in the translation will cause confusion, as the students might be unsure which type to use.

vohoanglong0107 avatar May 06 '24 22:05 vohoanglong0107

@qu-ngx Also, when translating type name, such as String, I believe translate String the first time it appearse is good, but it shouldn't be translated in subsequent appearances, as it can have cause confusion. For example, in Rust &str and String can be translated as Xâu in Vietnamese, but using only Xâu in the translation will cause confusion, as the students might be unsure which type to use.

It still has translation in Vietnamese and also String translation is a well-known Vietnamese word. That is why when I say translate you put in the brackets. You can refer to the other successful PRs of other people as well if you want. It has no cost and no harm in doing it as not everyone learn it in English first time. That is why both is better than just one.

qu-ngx avatar May 06 '24 22:05 qu-ngx

@qu-ngx Also, when translating type name, such as String, I believe translate String the first time it appearse is good, but it shouldn't be translated in subsequent appearances, as it can have cause confusion. For example, in Rust &str and String can be translated as Xâu in Vietnamese, but using only Xâu in the translation will cause confusion, as the students might be unsure which type to use.

Also, please remember you are doing the translation for everyone so clarity in the words and meanings have a significant role in why you are doing translations. These feedbacks are not set to target you, but to help you find a better way to make your translation as clear as possible to the other Vietnamese peers.

qu-ngx avatar May 06 '24 22:05 qu-ngx

Implement is also áp dụng, thi hành, trang bị, .... Trait aka đặc điểm, tính trạng, trạng thái. If you are not so sure, I think you can use some English dictionary (ie Meriam Webster) for the synonyms. English has many different shades so it is not tied to only one meaning at all.

@qu-ngx I could use these translations, but they wouldn't maintain the original meaning. For example, how would Deserializer implement Sync Trait be translated? IMO, we shouldn't force a translation on a technical terms. Rust Tiếng Việt agree with me on this point, as they also don't translate Trait and implement

vohoanglong0107 avatar May 06 '24 22:05 vohoanglong0107

Also, please remember you are doing the translation for everyone so clarity in the words and meanings have a significant role in why you are doing translations. These feedbacks are not set to target you, but to help you find a better way to make your translation as clear as possible to the other Vietnamese peers.

I understand, which is why I want to discuss with you the best way to translate this. I want to introduce this book to my Vietnamese friends, and I don't want to confuse them while reading the book.

vohoanglong0107 avatar May 06 '24 22:05 vohoanglong0107

@qu-ngx I have opened a new discussion to talk about this here

vohoanglong0107 avatar May 06 '24 22:05 vohoanglong0107

@qu-ngx I think some previous comments are staled after https://github.com/google/comprehensive-rust/discussions/2062#discussioncomment-9335645. Could you give this another go?

vohoanglong0107 avatar May 10 '24 14:05 vohoanglong0107

@qu-ngx I think some previous comments are staled after #2062 (comment). Could you give this another go?

Oh yea, sorry I forgot to remove some on comments. Can you check it for me. And btw the other "implements" is an action word. It isn't the name of the built-in implement. Can you help translate that one?

qu-ngx avatar May 10 '24 16:05 qu-ngx

@qu-ngx Are you referring to another implement? Because Deref<Target = T> is a trait, you can learn more about this trait here, implement in implement Deref<Target = T> isn't being used as English action verb. What implement Deref<Target = T> actually means is, any type that implement Deref<Target = T> will have a method called deref, which in many cases means that the type allows user to access the underlying type. I hope this clear things up a bit.

vohoanglong0107 avatar May 10 '24 22:05 vohoanglong0107

@qu-ngx I think this should be ready for another go

vohoanglong0107 avatar May 11 '24 00:05 vohoanglong0107