Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Add comment to core #17107

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open

Conversation

Arthur-Milchior
Copy link
Member

@Arthur-Milchior Arthur-Milchior commented Sep 22, 2024

The main goal of this PR is to ensure that all strings get a comment. While I used to naively think that most string were clear, and that translators would be able to figure out what they were translating, I realized, looking at the French translation, that it's not actually the case.

Instead of just fixing the French translation, I prefer to improve the process so that AnkiDroid can be correctly translated in all languages.

In particular, some strings are used in multiple context. E.g. as a button and the title of the dialog/view opened by this button. In English, it's certainly correct. In French it usually is too. I have no idea whether it's correct in all other languages. By letting the translators know that the strings is used in both context, they can provide feedback if ever they need us to split the string in two.

As an example, I recently split "Search" in two strings, one for the verb and one for the noun "search", because, in French, we need to use distinct words to consider the search action, and the content of the search request.

This problem would not even be solved by looking at the screenshot. Indeed, while it's easy to see which strings has no screenshot, it's not possible to state which usage is not screenshotted. So the translator may not have seen that "search" was used in two distinct contexts.

I should note that this task requires to look at all the strings, and look for all its usage in the codebase. Which means this task can only be done by a developer that knows the codebase and the app enough to understand all usages of each string. Worse, either reviewing such changes will be very painful, or the reviewer will have to have a high trust in the person doing this work. Which means, and I'm quite sad about it, that it can't really be delegated.

As a secondary goal, the commit reorders the string, so that they strings appearing in the same view get shown together. This is not probably not important for translators, but I find it cleaner.

I don't exactly expect this PR to be merged as-is. I mostly open it to gather feedback. If you are against this change (e.g. because it'll destroy the history of all our string files), I can stop and not spend more time on it.

Or, if you have any idea of a better way to write comment, I can use your idea in the future comments.

Once we agree this work is worthwhile and can eventually be merged, if you find typos, gramattical errors, or general improvement, I'd appreciate if you could directly push the correction as an additional commit, or provide the correction as a suggestion in github review system. Because, discussing every comment individually would be a nightmare of bikeshedding

The main goal of this PR is to ensure that all strings get a
comment. While I used to naively think that most string were clear,
and that translators would be able to figure out what they were
translating, I realized, looking at the French translation, that it's
not actually the case.

Instead of just fixing the French translation, I prefer to improve the
process so that AnkiDroid can be correctly translated in all
languages.

In particular, some strings are used in multiple context. E.g. as a
button and the title of the dialog/view opened by this button. In
English, it's certainly correct. In French it usually is too. I have
no idea whether it's correct in all other languages. By letting the
translators know that the strings is used in both context, they can
provide feedback if ever they need us to split the string in two.

As an example, I recently split "Search" in two strings, one for the
verb and one for the noun "search", because, in French, we need to use
distinct words to consider the search action, and the content of the
search request.

I should note that this task requires to look at all the strings, and
look for all its usage in the codebase. Which means this task can only
be done by a developer that knows the codebase and the app enough to
understand all usages of each string. Worse, either reviewing
such changes will be very painful, or the reviewer will have to have a
high trust in the person doing this work. Which means, and I'm quite sad
about it, that it can't really be delegated.

As a secondary goal, the commit reorders the string, so that they
strings appearing in the same view get shown together. This is not
probably not important for translators, but I find it cleaner.

I don't exactly expect this PR to be merged as-is. I mostly open it to
gather feedback. If you are against this change (e.g. because it'll
destroy the history of all our string files), I can stop and not spend
more time on it.

Or, if you have any idea of a better way to write comment, I can use
your idea in the future comments.

Once we agree this work is worthwhile and can eventually be merged, if
you find typos, gramattical errors, or general improvement, I'd
appreciate if you could directly push the correction as an additional
commit, or provide the correction as a suggestion in github review
system. Because, discussing every comment individually would be a
nightmare of bikeshedding
Copy link
Contributor

Message to maintainers, this PR contains strings changes.

  1. Before merging this PR, it is best to run the "Sync Translations" GitHub action, then make and merge a PR from the i18n_sync branch to get translations cleaned out.
  2. Then merge this PR, and immediately do another translation PR so the huge change made by this PR's key changes are all by themselves.

Read more about updating strings on the wiki,

@david-allison
Copy link
Member

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants