Description of problem: Add a new feature that will enable the import and export of translation memory. It would be good to be able to export the Zanata translation memory, and also be able to import translation memory from other programs. This will encourage the use of Zanata, as users will not have to start from scratch again. Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info:
To decide the scope of this RFE, we have to nail down the requirements. Does this require the idea of content which appears only in translation memory, but not in a project/version in Zanata? (Right now, TM is essentially just a view of all projects.) Or do we need the concept of TM-only projects (or are they just read-only projects, which we already have)? How does this relate to the idea of exporting and importing the entire Zanata database? Or a subset of the database? Would it include the entire history of translations and re-translations of a source string, and all the versions of source strings?
We probably need to import and export in TMX format, in which case you can ignore my second paragraph of questions above. There's some useful TMX information from OmegaT here: http://www.omegat.org/en/howtos/compatibility.html (See "Translation Memories") and a little more here: http://en.wikipedia.org/wiki/Translation_Memory_eXchange Regarding TMX, we have a choice between Level 1 (no formatting) and Level 2 (with formatting) support. I think we should just implement Level 1 to start with, especially as most of our current file types don't include formatting. This should allow us to import Level 2 TMX files, by ignoring the formatting. We still need to decide whether we want to store imported TMs in Zanata as "TM projects" (one or more of them). And as a feature note, we should probably allow the user to export the entire TM or a subset of projects to TMX.
Transifex has some information about its TMX import/export here: http://support.transifex.com/customer/portal/articles/1026110-translation-memory-exchange-tmx-api http://help.transifex.com/features/api/index.html#translation-memory-exchange-tmx
Created attachment 749136 [details] Sample TMX file Thanks to Themis at Transifex, I've attached a sample TMX file for the Fedora "Burning ISO images to disc" guide.
Acceptance Criteria for 3.1 from Isaac is as follows: Translation memory - Import/Export - User interface option within settings to allow for the importing or exporting of TM - User standard convention files format (TMX) - Allow input of TMX format TMs. - New entries should be added as own TM entity, with ability to merge into existing Zanata TM. - Existing Zanata TM content is given preference over new content -by default - during TM merges. - TM merge ability to have numerous options for potential conflicts - Support TM input from other popular translation tools and formats (eg: Worldserver). We can continue to expand the support base of this over time.
- Import TMX - Keep TMs separate - Indicate to user which TM that suggestions are coming from
Is there anything else we need to check with this one?
This one is good to go, as far as I'm concerned.
Closing VERIFIED bugs for Zanata versions <= 3.1.