Jul 29, 2012

memoQuickie: Adding terms to multiple memoQ termbases

By default, memoQ always writes new terms to the primary termbase; other termbases selected are for reference only. However, as of version 5, it is possible to change where terms are written and to write to more than one termbase simultaneously.

Select a term to record and choose Operations > Add Term... or use the toolbar or keyboard shortcut to open the dialog for creating a termbase entry.


The upper right of the dialog shows the termbase(s) to which terms will be written. Clicking the small, black arrow opens the dropdown menu where all termbases in the project can be selected and deselected for adding terms.


In the example above, the term will be written to two termbases.

The selections remain the default for all new term entries in the project until changed again. If the primary termbase is not selected, no terms will be written to it.

Creating translation projects in memoQ 6

As with most other translation environment tools, memoQ translations are performed in "projects" which bring together all the necessary support resources for reference, quality assurance, etc.

New projects are started on the Dashboard when you open memoQ or in that and any other context by choosing Project > New Project...  


This opens the Project Wizard.


 Name the project, choose the source language and a target language and add any relevant meta data (for inclusion in translation memory and term data). Recording the version history is a good idea if new versions of source documents may come or if you want to track changes in a translation.
The next wizard screen lets you select the documents to translate.


These can also be added later if you do not have them or are creating a template project for later use. Import adds the selected documents to the project using default filters; Import with options... allows other filters to be specified or special filter settings to be chosen.


The translation memories page of the wizard shows all the registered TM resources; memoQ uses a primary TM into which translated segments are written and as many reference TMs as you like. Here the ISO 9001 memory is chosen as a reference for matching and concordance search.


Termbases also have a "primary" termbase and any number of reference termbases, but unlike TMs, new information can be written to more than one termbase simultaneously if the settings are adjusted later.


After the project wizard setup is finished, the project is ready to be used for translating. Double-clicking an item in the translation documents list will open it for work.

Jul 27, 2012

Translating embedded objects in Microsoft Office documents

Yesterday a colleague sent me a note to say he had been searching my blog for information about translating compound Microsoft Office documents (that is documents with embedded objects) in memoQ and couldn't find any. I presume he was referring to the article about how often one CAT tool is not enough - combined workflows with other tools can frequently help solve many tricky translation problems, and DVX2 or STAR TRANSIT are definitely useful options for preparing compound Microsoft Office documents for translation in memoQ. Some time ago I recommended using STAR TRANSIT as a pre-processing tool to one of my agency friends, and he carried out a very large, complex project successfully using memoQ's excellent integration features for STAR TRANSIT projects.

There is, of course, another simple way to translate the embedded objects in a Microsoft Office document that does not involve purchasing other software licenses. I don't usually talk about it, because there are a few limitations, and until recently I had not figured out how to avoid corrupting the files when I tried to do things the "easy" way. This approach is not limited to memoQ and will actually work with most CAT tools - so SDL Trados Studio users can do this as well, for example.

It is useful to know that the Microsoft Office 2007/2010 file formats (DOCX, PPTX, XLSX) are really just ZIP files containing XML and a bunch of other stuff. That stuff includes a folder with the embedded objects in formats that can be dealt with directly.

If you have an older, binary MS Office document (DOC, PPT, XLS) with embedded objects, convert it to a 2007/2010 format.

If you rename the file extension DOCX, PPTX or XSLX to ZIP and unpack the ZIP file, inside the folder you will find a folder called "embeddings". The files in that folder can be copied elsewhere and usually handled directly in your CAT tool. But problems usually arise when you put them back, rezip the folder and change back to the original extension. The compression gets screwed up, and the Microsoft Office file is corrupted and won't open.

The only reliable method I have found for avoiding this is to use the Windows Explorer (under Windows 7) to open the ZIP file:



Here's what the "guts" of one DOCX file with a bunch of embedded Excel tables looks like:

Inside the word folder you'll find the embeddings folder:

The contents of the embeddings folder look like this:


Simply copy the embeddings folder somewhere safe, translate its contents, then copy them back to the ZIP file using Windows Explorer. Then rename the ZIP extension to the original extension for the file.

If you open the file and look at it, you'll get a shock. When you see all the objects in their original language, you might think something went wrong. Nothing bad has happened; you merely need to refresh the objects. This can be done by opening each briefly to edit or using a macro to open each object and close it again quickly. In a job with dozens of embedded objects in a long file, this macro is a helpful shortcut.

Given how easily accessible this embedded content actually is, one has to wonder why other major CAT tool providers like SDL and Kilgray have failed to offer the option of importing embedded content in their filters up to now. Let's hope they do soon. In the meantime, this workaround should enable many people to deal with this complex and irritating file format challenge.

Here's a summary of the procedure once again:
  1. Rename the *.???x file to *.zip 
  2. Under Windows 7, right-click on the ZIP file and open it using the Windows Explorer. Using ZIP tools of any kind risks corruption by changing the compression ratios. 
  3. Find the embeddings folder inside the ZIP structure. Copy this elsewhere and use it as the source for translation. It will contain all the embedded objects as single files. 
  4. Copy the translated content back into the embeddings folder in the ZIP structure.
  5. Rename the ZIP file to its original extension. 
  6. Open the file and refresh each embedded object (which will initially appear not to have been translated) by right-clicking and opening it from the context menu or running a macro to do that.