I just finished yesterday the translation of all (or I thought so ) strings of dev branch, and noticed that, though AMOS doesn't find any untranslated string, the download page (http://download.moodle.org/langpack/2.6/) doesn't agree and says for french 99% (19736/19737).
I can imagine that español - Mexico is in the same case.
Thanks for these reports. These issues are caused by empty strings in the English pack that AMOS does not handle well
I just did couple of changes in the code:
- Strings without committed translation are now correctly reported as missing even if the original string itself is empty. This was the reason why the translator did not display them so it looked like all strings were translated. In the French and Italian pack, this revealed two untranslated strings [advanced_dlg:,editor_tinymce] and [sectionname,format_singleactivity]. Both of them are empty in English (so there is no real reason to translate them) but other parts of the AMOS machinery considered them as missing. I have committed them as empty for the French and Italian already as a part of my testing.
- It is now possible to commit empty string. The only trick you need to master is to realize how to actually stage them. What I do is that I translate them to some random non-empty value first and right after that, I change them to an empty string. Then I can go to the Stage page and commit them as empty strings.
The only remaining thing on my todo list is to review the code that calculates the translations stats at the download page. As I said above, both French and Italian had actually two missing (empty) strings. But the stats page reports that 19750 of 19751 are translated, that is only one is considered as missing. The logic behind this calculation is surprisingly complex (as for example there are some strings that are not translatable via AMOS and therefore can not be counted as missing etc) so I believe the bug is hiding somewhere there.
Right, so it should be sorted out now. The mismatch is probably caused by the string 'plugins/fullpage_dlg:add_link' defined by the 'editor_tinymce' component. You can't find it in the translator because AMOS hides all *_link strings from the translator UI. But it has been imported into our lang packs from the upstream TinyMCE translations. So at the end, that string is counted twice as translated: once because it ends with _link suffix (and all such strings are automatically considered as translated) and then again because it is really present. That explains the displayed figures.
Anyway, I am not going to change this now. Fully translated packs are now displayed as 100% translated and that's enough for now. Thanks everybody who helped with reporting and testing this.