GetTranslated.AI
Tag

#Internationalization (i18n)

5 min read

Why Localization Fails in CI (Even When It Works Locally)

Localization issues that appear in CI are rarely random. They’re the result of missing plural categories, placeholder mismatches, and structural drift that local development never exercises. This guide explains why localization works locally but fails in CI, the most common failure modes teams encounter, and how continuous localization turns CI from a source of surprises into a predictable safety net.

5 min read

Why Placeholders Break During Translation (And How to Make Them Safe)

Placeholders like %d, %@, and {count} are a common source of localization bugs that often slip through reviews and only fail at runtime. This guide explains why placeholders break during translation, the most common failure modes across Android, iOS, and React Native, and why these issues tend to appear late in development. It also covers how teams make placeholders safe by treating them as structured configuration and validating them continuously as part of modern localization workflows.

5 min read

How to Localize a Legacy Mobile App Without Rewriting Everything

Most legacy mobile apps weren’t designed with localization in mind. Strings are hardcoded, layouts are tightly fit to English, pluralization is inconsistent, and there’s little to no validation around translated files. When teams decide to go global, localization can feel risky enough to require a rewrite or a feature freeze. This guide shows a safer alternative. It walks through how to localize an existing iOS or Android app incrementally by scoping carefully, externalizing strings over time, and planning for layout expansion, plurals, and placeholders early. It also explains why treating localization as a continuous process — instead of a one-time project — dramatically reduces risk as apps scale to more languages. The goal isn’t perfect localization on day one, but a workflow where adding the next language feels predictable and boring, not fragile or disruptive.

5 min read

React Native Pluralization Explained: ICU Rules, Libraries, and Common Failure Modes

Pluralization in React Native is deceptively complex. With no first-class plural resource system, rules are evaluated at runtime in JavaScript and behavior depends heavily on the i18n library you choose. This guide explains how React Native pluralization actually works, common failure modes teams encounter in production, and why English-only testing is insufficient. It covers library tradeoffs, runtime behavior, languages that break naive implementations, and why plural bugs tend to surface late. You’ll also learn how continuous localization and automated validation help React Native teams keep plurals correct as apps scale.

5 min read

iOS Pluralization with .stringsdict: A Complete, Practical Guide

iOS pluralization is powerful, flexible—and notoriously easy to get wrong. Instead of a simple plural resource type, iOS relies on .stringsdict files that combine plural rules, formatting logic, and variable substitution. The syntax is verbose, the failure modes are subtle, and many mistakes don’t appear until you add multiple languages. Missing plural categories can cause incorrect fallbacks or even return raw keys instead of strings, while placeholder specifiers like %d or %@ can drift during translation and trigger runtime formatting errors. This guide walks through how .stringsdict files are evaluated, the most common traps teams fall into, and how to structure plural logic defensively. The goal is to make pluralization predictable and safe, even as your app scales to more languages and contributors.

5 min read

Android Plurals Explained: quantityStrings, Edge Cases, and Common Mistakes

Android pluralization looks simple until it isn’t. You add a <plurals> block, define one and other, and ship. Then you add a new language, QA finds broken grammar, or your build starts failing because the plural categories don’t match what that language actually needs. Android’s rules are ICU-based and language-specific, which means quantity="one" does not always mean “the number 1,” and many languages require categories like few, many, or two. Plural strings also almost always contain placeholders, and translation updates can quietly remove, reorder, or corrupt them—often without an obvious error until runtime. This guide explains how Android plurals really work, the most common mistakes teams make, how to structure plural resources defensively in your base language, and what to validate so plural bugs don’t show up late (or in production).

← Previous Page 3 of 4 Next →