Lab 2.2: Advanced Mojibake Diagnosis & Remediation
Act as a senior localization engineer performing triage on a batch of multi-lingual assets across three verticals (Software UI, Video Games, and Linear Media Subtitles).
Objective
In this hands-on lab, you will act as a senior localization engineer performing triage on a batch of multi-lingual assets across three verticals (Software UI, Video Games, and Linear Media Subtitles). You will analyze pattern signatures to determine whether character corruption is reversible decoding misinterpretation or irreversible byte destruction, recover reversible files using Visual Studio Code, and generate clean UTF-8 production assets.
Required Setup & Prerequisites
Editor: Visual Studio Code installed.
Working Directory: Open your
loc_labworking directory in VS Code.
Step-by-Step Instructions
Step 1: Create the Batch Diagnostic Assets
To practice pattern recognition and triage, create three corrupted localization assets in your working directory.
Open VS Code and navigate to your active workspace.
Inside
assets/loc/software/, createui_de_corrupted.jsonand paste:JSON
json{ "welcome_msg": "Willkommen in München!", "btn_save": "Änderungen speichern", "status_ok": "Möglich" }Inside
assets/loc/games/, createdialogue_fr_corrupted.jsonand paste:JSON
json{ "npc_01": "C'est l'heure!", "npc_02": "O est la cl?", "btn_exit": "Quitter" }Inside
assets/loc/media/, createsubtitles_es_corrupted.vttand paste:Code snippet
WEBVTT - Spanish Subtitles 00:00:01.000 --> 00:00:04.000 ¡Hola! ¿Cómo estás? 00:00:04.500 --> 00:00:08.000 Bienvenido a la edición especial.Save all three files (
Cmd + Son macOS /Ctrl + Son Windows).
Step 2: Triage Asset #1 — German Software UI (ui_de_corrupted.json)
Open
assets/loc/software/ui_de_corrupted.jsonin VS Code.Inspect the pattern signatures:
Müncheninstead ofMünchenÄnderungeninstead ofÄnderungenMöglichinstead ofMöglich
Diagnosis: Notice that two single-byte characters appear where one accented vowel should be (
üforü,ÄforÄ,öforö). This is the classic signature of a UTF-8 file being read as single-byte Windows-1252 / ISO-8859-1.Remediation:
Click the encoding profile in the Status Bar (bottom right).
Select Reopen with Encoding type
UTF-8pressEnter.Verification: Observe that
Münchencleanly renders asMünchen.Click the encoding indicator again select Save with Encoding
UTF-8.Save the file and rename it to
ui_de_clean.json.
Step 3: Triage Asset #2 — French Game Dialogue (dialogue_fr_corrupted.json)
Open
assets/loc/games/dialogue_fr_corrupted.jsonin VS Code.Inspect the pattern signatures on line 3:
"npc_02": "O est la cl?"
Diagnosis: Notice the replacement characters (`` or
U+FFFD). The original bytes representing `ùandé` were completely overwritten or stripped by a destructive legacy save operation.Assessment: This is Irreversible Byte Corruption. Attempting to "Reopen with Encoding" across various profiles (
ISO-8859-1,Windows-1252,UTF-8) will not restore the missing letters because the underlying data is gone.Remediation:
Flag the file as unrecoverable via automated re-decoding.
Manually re-key the missing characters (
ùandé) in VS Code:JSON
json{ "npc_01": "C'est l'heure!", "npc_02": "Où est la clé?", "btn_exit": "Quitter" }Ensure the status bar displays
UTF-8, save the file, and rename it todialogue_fr_clean.json.
Step 4: Triage Asset #3 — Spanish Subtitles (subtitles_es_corrupted.vtt)
Open
assets/loc/media/subtitles_es_corrupted.vttin VS Code.Inspect the pattern signatures:
¡Hola! ¿Cómo estás?
Diagnosis: Double-byte UTF-8 character sequences (
¡,¿,ó,á) were interpreted through an 8-bit Latin-1 character map, adding leadingÂcharacters before inverted punctuation.Remediation:
Click the status bar encoding indicator select Reopen with Encoding
UTF-8.Observe line 4 instantly resolve to:
¡Hola! ¿Cómo estás?Select Save with Encoding
UTF-8.Save the file and rename it to
subtitles_es_clean.json(or.vtt).
Self-Verification Checklist
Check your remediated assets against these production metrics before completing Lab 2.2:
[ ]
ui_de_clean.jsonrendersMünchen,Änderungen, andMöglichwith zero double-byte artifacts (ü).[ ]
dialogue_fr_clean.jsonis correctly re-keyed toOù est la clé?with valid JSON syntax.[ ]
subtitles_es_clean.vttrenders¡Hola! ¿Cómo estás?without erroneousÂcharacters.[ ] All three production files explicitly display
UTF-8in the VS Code Status Bar.
Ready to move on?
Mark this lesson complete when you’re ready.