Pseudo-translation

Pseudo-translation is used to simulate the effects of translation on the project files (commonly) by substituting vowel characters in the source files with accented characters or adding other characters. This is useful for software localization, or for complex formats (e.g. DTP and software localization) to help anticipate any conversion issues before translating the entire file.

One of the most common features in the pseudo-localization process involves translation of string resources. Strings can be translated by prefixing them with extra characters, adding suffixes, or by replacing existing characters. The replacement characters are mostly picked randomly from a predefined set of similar characters from other languages that are determined by the test scenario required. The characters used for replacement often look like the characters they replace in order to ensure readability. For example, Latin “a” can be replaced by one of the symbols from a set: { ä, å, à, à, â, ã, }.

This modification of resource strings will show if the text can be translated, if non-Latin characters are supported by the mechanism that handles resources, and if there is a dependency between the string resources that would require a consistent translation of two different strings. If all string resources are translated, string resources displayed in English will uncover possible hard-coded strings, files that aren’t within the scope of localization, or files that are not in a localizable format.

A second common pseudo-localization feature is string-length extension. With this feature, strings can be made longer by appending characters, and string delimiters can be specified so that you can see where a string starts and ends. With string-length extension you can test for buffer overflow and truncated strings; you can also see the text built from several resource strings at run time. For example, suppose you add the left brace symbol ( { ) at the beginning of each string and the right brace symbol ( } ) at the end of it, and that you see the following text displayed by the application:

{string1{string2}} string3 {string4

This particular display means that the whole text was built at run time; “string2” was inserted into “string1;” “string3” was not loaded from a pseudo-localized resource; and “string4” was truncated.

The Pseudo-translation plugin settings dialog lists six transformations. memoQ performs the transformations in the order they are listed in the dialog. Each step can be turned on and off, and some can be customized. By default, all transformations are turned on.

• Spell words backwards: Check this check box if you want to see the source words spelt backwards in the pseudo-translation. The order of words will not be changed.
• Double first vowel in segment: Check this check box if you want memoQ to write the first vowel twice in each word. Type the vowels in the Vowels text box. By default, English vowels are listed.
• Substitute characters: Check this check box if you want memoQ to replace certain characters in the text. This might make the pseudo-translation look more similar to the hypothetical target language. Type the original characters in the Source text box. Type the replacement characters in the Target text box. Make sure you type the same number of characters in both text boxes. memoQ replaces the first character in Source with the first character in Target, and so on.
• Add to start of text: Check this check box if you want memoQ to add characters at the start of the pseudo-translation. Type the characters in the text box to the right of the check box.
• Add to end of text: Check this check box if you want memoQ to append characters to the end of the pseudo-translation. Type the characters in the text box to the right of the check box.
When machine translation is turned on, memoQ performs the transformation on the source text, and returns the pseudo-translation.