The translations from an earlier version is now available as matches from Translation Memory. What we could perhaps have is a manual 'auto-fill from TM' feature with tunable settings. For instance, 1. only allow autofill for translations with 100% matches, 2. allow autofull for translations with x-100% match, but add a 'needs review' flag to the strings modified etc. Does that serve the purpose here?
That sounds good, Runa, I would also strongly suggest to then being able to specify the project/version I want the translations to be taken from.
If you push a project version v1, then translate it, then push another version v2 which is very similar (including the same filenames), copyTrans should already be capable of reusing most of it. It's when you enter v1 translations after v2 has been created that copyTrans really lets you down. (Or when the filenames change for some reason.) The original description for this bug sounds like a request for manual "copyTrans" [1]. Autofill (or TM merge) is certainly a very useful idea too, and could reuse translations in cases where copyTrans can't. But as far as TM merge goes, our TM is currently global, so it's somewhat expensive to limit it by project/version for this one case. But if we're careful to mark the reused translations as 'needs review' when the text or metadata (eg project name) doesn't quite match, it shouldn't be a big problem. [1] https://bugzilla.redhat.com/show_bug.cgi?id=831035
We will perform TM merge one page at a time so that user can see the result on screen. We will check following rules when auto-filling untranslated text flow. If one of below is true, we won't set status to 'approved' automatically. 1. match percentage is not 100% 2. project name is different 3. doc id (full path of file) is different 4. resource id is different Condition 2, 3, 4 will be configurable. Options are: 1. Set as fuzzy 2. Skip auto fill 3. Set as approved
committed into master: https://github.com/zanata/zanata/tree/3cb21a01db4a358a71f8fe4d8adb408c8484e7c8
The following is the original description from Hedda Peters (with project names removed): User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:9.0.1) Gecko/20100101 Firefox/9.0.1 Feature Request: As a project maintainer, I want to pre-fill a new version of a given project with existing translations from the previous version of that same project, in order to save myself and the translators time for maintaining/translating. i.e, creating version RHEL Installation Guide 6.3 on Zanata, I want to be able to auto-fill the files with existing translations from RHEL Installation Guide 6.2. Currently the merge of old/new version has to be done outside of Zanata, using scripts written a long time back by Manuel. Pitfalls: - scripts need to be installed first - process of using those scripts is prone to user errors - process is time consuming - technical issues with those scripts, not a reliable merge [1] If the merge is not done outside of Zanata, the existing translation of the previous version will only be presented as 100% TM matches, which then can be copied for each message individually by the translator. Pitfalls: - does not scale for bigger projects (too much copy & paste required). - unable to estimate workload, as Zanata shows 100% untranslated for the whole project [1] Example: We ran a manual merge of $old_version and $new_version using those scripts. The manual merge resulted in ~43 hours of workload. We dismissed those results and instead just created new .pot files of $new_version and pushed them onto the existing $old_version on Zanata using "zanata publican push". The resulting workload was ~11 hours. Clearly the manual merge process did not produce the best result. Reproducible: Always Steps to Reproduce: 1. Existing version project XYZ version 1 2. Create new version project XYZ version 2 3. Actual Results: Existing translations from previous version shows up only as 100% TM matches. No way to trigger an automatic re-use Expected Results: There should be a way inside of Zanata to trigger an automatic re-use of translations from previous version
Added feature: For all TM merged translation, it will have comment in the result file as "auto translated by TM merge" Committed into master: https://github.com/zanata/zanata/commit/f6df79ef146ea9caeba9317d0340aa765d5acdd2
Regarding "selected TM match..." dialog: The last condition shows: Appproved, which does not reflect the actual behavior, which is: If not downgrade to Fuzzy, then approve. Please states this in the dialog. REASSIGNED.
Change label to: If not Reject or downgrade to Fuzzy: Change button text and added tooltip. Committed into master: https://github.com/zanata/zanata/commit/9d381dac98990ee6f04c62a967380c5d95065920
VERIFIED with Zanata version 1.7-SNAPSHOT (20120711-0026)