One thing I was never able to understand about MemoQ is why it won’t allow me to select more than one translation memory at a time, which makes for a time-consuming and boring process. Even Trados Studio allows to import all TMX files within a folder, so why doesn’t MemoQ do this is beyond me. If you want to import multiple translation memories, however, there’s a handy workaround that works flawlessly (most of the times, at least). Instead of importing multiple translation memories into MemoQ, we will import a single, bigger memory.
Besides a copy of MemoQ (obviously), we’ll need to download the Okapi framework, a set of open source tools aimed at the translation and localization industry and used in a wide range of translation management systems. Okapi includes a few utilities, but we’re only interested in one called Rainbow that includes useful file conversion features. This isn’t the only thing Rainbow does. It’s actually a very complex and very user-unfriendly program that does almost everything a Language Service Provider may want to do with the files they have to process. The Okapi framework requires JRE to work, so you’ll need to install it like I explained in this previous article. The Okapi framework can be downloaded from here.
Note: There is also an older version of the Okapi framework written in .NET and hosted at Sourceforge. This version is kept only for backwards compatibility and should not be used.
Importing your TMX files into Rainbow
After opening Rainbow by double-clicking on its icon, drag and drop the TMX files you want to merge into one into the Input List 1 tab. Depending on the number of files you’re importing, the Rainbow window may freeze for a while. This is normal. Wait until it unfreezes. In this example, we’re converting the DGT translation memories, a collection of about 30,000 files.
Set the source and target languages
Click the tab labeled Languages and Encodings and select the source and target languages that you want to use. Rainbow does not treat generic language codes, such as EN, as placeholders for specific codes, so make sure that you’re selecting the correct regional variation. You can do this by simply checking the <tuv lang> tags inside the translation memories.
Make also sure you’re selecting the correct encoding. When you’re in doubt, select UTF-8.
Click Utilities > Conversion Utilities > File Format Conversion…
You will be presented with the following window.
Make sure the Output format is set to TMX Document and that the box for Create a single output document is checked (it should be by default), then click the ellipsis button next to Output path to select a location where your translation memory will be created.
Click Execute to start the process.
Depending on the number of files to process, the conversion may take a long time. On my computer, it took almost 22 minutes to complete. You can press F9 to bring up the Log and see the conversion progress. If everything went well, your Log will look somewhat like this.
Importing the translation memory into MemoQ
Open MemoQ and click on the Resource Console icon on the left of the title bar.
On the left pane, select Translation memories and then the memory you want to import new segments into. Alternatively, create a new empty translation memory. Click the link Import from TMX/CSV.
Select the translation memory you’ve created earlier with Rainbow and click Open. This process too will take quite some time.
After a while, you’ll be presented with this window. Click OK to dismiss it.
MemoQ will start importing the translation memory. Depending on its size, this process may take a lot of time. Importing the entire DGT translation memory took about 2 days on my computer. At the end, the Progress window will close automatically if you checked the Close on finish checkbox. If not, click the Close button and your translation memory is ready to use.