-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Description
Summary
At the moment, only about 27% of the app's translatable messages are documented. The documentation is stored as a string in the qq pseudo-language code (in MediaWiki, it's called qqq, but in the app, it's qq for technical reasons).
This has several implications, most importantly:
- Obvious: Translators may not know how to translate some messages at all, or translate them incorrectly because they don't know the context.
- Less obvious: Some messages are completely unused—they were perhaps used once, but then removed from the code, but not from the strings file. Maintaining correct and complete documentation helps to find such cases.
- Even less obvious: When adding new messages, a
qqvalue must be added. When many strings are undocumented, it's hard to find the good place to add it in the file, because the sequence of the strings is supposed to be the same as in the source strings file, but theqqlist misses many keys.
Ideally, the level of documentation must be 100% at all times. Of course, the documentation should be not just a non-null string, but it should be correct, clear, and helpful to translators.
The easiest way to fix this is to open the full list of missing documentation strings and add them as if they were translations: https://translatewiki.net/w/i.php?title=Special%3ATranslate&group=commons-android&language=qqq&filter=%21translated&action=translate
Technically, doing this works exactly like adding translations, but the documentation strings are, of course, not translations, and they are always written in English. The documentation style is practically the same as for MediaWiki, so you can reuse the tips at https://www.mediawiki.org/wiki/Help:System_message#Message_documentation . To contribute translations, you need a translatewiki account; if you are creating a new account for this purpose, click "Can't submit some translations right now? You can still join." at the bottom of the account creation form, and write "I want to write documentation for Commons Android App strings", so that your account will be approved quickly.
For every string to which you are adding documentation, make sure that you understand where it is used, and describe what it is: Alternative text, image caption, screen title, error message, or something else. If you cannot find the string at all, write "Seems to be unused"; in the longer term, if the string is indeed unused, it should probably be removed from the strings file completely.
I've started doing it myself, but I prefer this bug not to be assigned to me for several reasons:
- Even though it's not very difficult, it is a bit long, and I don't know when will I end.
- In addition, I'm not sure about some strings, so I don't know if I can complete it to 100% myself.
- It's a relatively easy thing to do because it requires practically no code writing, so many other people can help, especially beginners. If it's assigned to a particular person
Once all the strings are added, it would be nice to add an automatic test that requires adding a corresponding qq string for every new translatable string, but that should be a separate follow-up bug.
Steps to reproduce
Expected behaviour
The page should say "Nothing to translate".
Actual behaviour
The page shows multiple rows of unwritten translations (actually message documentation strings).
Device name
all
Android version
all
Commons app version
current source
Device logs
No response
Screen-shots
No response
Would you like to work on the issue?
None