SDL Passolo customizations

SDL Passolo is a powerful software localization tool. The tool is highly adaptable and extensible. We master Passolo. We tailor it to fit your needs. We can develop addins using the SDK, write powerful macros and help to automate your build process.

Besides the ability to create custom addins, Passolo provides two key features for software localization.

The most important feature in Passolo is the ID-based concept. Each text in a software application has a unique string identifier (ID) that remains the same during the life cycle. A string identifier is connected to a source text and translations. Passolo maintains all source texts and translations in a project.

When developers send new source files, then Passolo identifies using the string identifiers which strings are new, modified and deleted. Based on those changes, Passolo will add new strings, change the translation status, etc.

The ID-based concept allows users to setup a project from scratch and then align the translations from existing resource files rather than using a translation memory (TM). This alignment process is 100% accurate, while a TM may result in different matches for the same source text.

Passolo can provide interactive previews for certain resource formats (like winforms and .Net applications). Passolo extracts the previews from the resource files; only a part of the texts will be visible in context.

advanced parser for Excel files. It often occurs that engineers write all source strings and translations in one Excel file. This has a serious impact on the translation department, because they have to do a lot of copy and pasting. With our solution, we can directly parse the Excel files into Passolo. When the translations are ready, our addin writes the translations back to Excel. This robust addin saves a lot of time and errors.

Custom parser for a manufacturer of medical imaging software. They use

We implement custom viewers so that translators can localize their applications in context. This way, they make less contextual translation errors and can visually check the impact of their translations (helps to avoid length issues).

Example 1: Rigi

Rigi is an advanced solution to localization complex software applications in context. We provide a Rigi addin for SDL Passolo. Using this addin the translator can localize dynamic applications in context. Example of dynamic applications that Rigi supports:

Web applications

Windows WPF desktop applications

Embedded software

Microsoft Silverlight

Example 2: Medical imaging software.
A manufacturer of medical imaging software provided a binary assembly that contained all string definitions and logic to render previews with translated strings.
Translators could translate the software strings in context. Selected strings are highlighted in the preview and the translations are substituted. The implementation also supports that variables are substituted with their actual values (in the sample below, variables $(min) and $(max) are replaced with their actual values 0.6 and 0.8. This way a translator

Example 3 – Legacy software for medical applications.
In the former example, the developers provided an assembly with controls. This guaranteed that the rendering engine in Passolo used exactly the same logic as in the target application.
In another case, the client provided us with two types resource files. One file type contained the texts (similar to a .properties file). The other file type (XML) defined the window definitions, i.e. controls, positions, sizes, fonts and which string identifiers a control could display at run time. We developed an addin that could render the legacy dialogs and its strings. We implemented controls that had the same layout as in the legacy application, which is very challenging. To have a reliable length check, this should be pixel perfect.

Example 4 –Embedded software for a portable insulin pump.
The engineers had developed a simulator that ran on a Windows machine before the addin was developed. We implemented an extension to that simulator, so that Passolo could communicate real-time with the simulator. Passolo was able to filter the strings that were visible on the simulator. Translations that were entered in Passolo became instantly visible on the simulator.

We have implemented many custom export modules. For example, we implemented solutions to TMX and XLIFF. It is even possible to upload source/target pairs from Passolo to another system, such as another TM.

Passolo supports the exchange of custom files with 3rdparty tools. Translators prefer their own translation editors. We implemented export/import tools so that translators can do their job in a translation tool like Across, which exchanges Excel with external tools.