Localizing an iOS drawing app with memoQ, one cliffhanger at a time
This post is the first of a series where I explain how I used
to localize an iOS app with a largely unknown vocabulary. These are the series’ installments:
- Regexing the daylights out of an iOS localization package
- Workplace safety: get placeholders out of the way with the regex tagger
- Did I screw up the file filter? Testing the iOS localization package with pseudo-translation
- Converting a 500-page PDF user manual with TransPDF
- Mine 200 thousand words of translated content through memoQ’s hands-off aligner and translating concordance
- (Updated as the new posts are published)
We all need a hobby, don’t we all? The one I found for myself recently is hand-drawing silly comics about the Serious Topics of translation technology. Trying my hands at something so brazenly outside my skill set is a great way to get a free pass and just have fun beyond my comfort zone. Credit where credit is due: the zines of Julia Evans inspired this entire CAT Zine thing. You must totally check out her Networking Zine and learn what happens when you download a cat picture from a website!
The app I found for these fledgeling experiments in visual arts is Inkpad, maintained by Derek from Envoza. I am not in any way affiliated with Inkpad; I simply endorse it because it’s an awesome app worth every cent of the $2.99 it costs, twice over. At that price point, it’s basically a love of labor to preserve all the work that had gone into its open-source predecessor, now that it's not available anymore in the App Store.
So enthused was I with Inkpad that along with a minor bug report, I submitted to Derek my offer to localize the app into Hungarian. I never had hands-on experience with iOS localization, so there’s a brilliant learning opportunity. And who wouldn’t want to conjure up half a day’s worth of after-hours work just for the fun of it?
Soon enough I received a response along with the localization package. And that’s when I realized just how much work I will have with this. You see:
- The iOS localization package is a bunch of text-based files with a relatively simple format. The emphasis is on relatively: for want of on out-of-the box filter, I need to magick up a regex approach to deal with them in memoQ.
- Once the strings are comfortably imported, there are still placeholders in there for values that are substituted at runtime. Think of things like "Delete %d Drawings", where %d stands for the number of images about to be erased from existence. memoQ’s regex tagger comes to the rescue.
- After so much engineering, how can I be sure I didn’t mess up? It would be horrible if I spent hours translating, only to learn at the end that the output is some utterly useless mess that only achieves a crash instead of a nicely localized app. The best way to verify that is to produce a pseudo-translated deliverable right at the start. The app’s developer can test the files immediately and warn me if there are any problems.
- Phew, now I have all these strings to be translated… Which is when I realize, I know squat about vector graphics in Hungarian. I learned this whole trade in English! To avoid being an impostor, let’s find out about the standard vocabulary – and what better place to start than, say, the documentation of Adobe Illustrator, the mother of all vector graphics software? It’s right there, in English and Hungarian. As two huge PDF files. So the next step is to convert these into a civilized format using the wonderful TransPDF service and some more arcane functions related to XLIFF, numbers, and plain text files in memoQ.
- OK, so I have two huge text files. How do I know what is the translation of what? memoQ’s hands-off aligner, aka LiveAlign, helps with that. And once memoQ has figured out how to pair up these two times 24 thousand sentences, the translating concordance feature is there to tell me how individual words were translated by the good folks that localized Illustrator’s documentation.
- The rest is easy: with so much information at my fingertips, I’m ready to localize Inkpad’s user interface like a real pro.
All of this only took a few hours, including the translation itself, but it’s a lot to unpack. So I decided to split this stuff into multiple shorter posts, each focusing on a single part of the process. Let’s dive right in!
Part 1: Regexing the daylights out of an iOS localization package