Files
cadcraft/docs/localization-parity.md
T
a6200fa34f i18n(pt-BR): complete the Brazilian Portuguese catalog (#791)
Add the 238 rows that still fell back to English, taking the catalog to
1,231 rows: it now covers the reference catalog and every marked UI
literal (commands, menus, tool groups and tooltips, object snaps,
drafting prompts, dialogs and Preferences), so the i18n tests report no
remaining gaps for pt-BR.

The translations follow the terminology already used in the catalog
(cota, hachura, camada, pinça, janela gráfica, referência a objetos) and
preserve placeholders ({n}, {name}) and trailing ellipses exactly.

Also add a bundled-font glyph test for the catalog's accented letters,
mirroring the German and Ukrainian ones, and record the completion in
docs/localization-parity.md (status line and revision history) and
docs/localization.md.

Written from CADCraft's English strings; no proprietary localization
resources were copied.

Co-authored-by: Brandon Thomas <[email protected]>
Co-authored-by: Claude Opus 5.5 <[email protected]>
2026-10-13 04:45:43 -04:00

8.5 KiB
Raw Blame History

Localization parity

Last reviewed: 2026-10-10 · Last updated: 2026-10-11 · Change: minor (Czech catalog added: reference/literal coverage, Czech plurals and menu headings) · Target: Autodesk AutoCAD 2027 for Mac (26.0)

How far CADCraft's interface and drawing text are from AutoCAD's languages. Summarised in ROADMAP.md; work items in gaps.md.

What the target ships

Measured from the installed AutoCAD 2027 for Mac bundle by listing only (folder names, nothing read): Contents/Resources has Base.lproj (English), de, es, fr, it, ja, ko and zh_CN localizations, and Resources/Support has matching @de@ … @zh_CN@ folders. That is 8 interface languages on the Mac. AutoCAD for Windows also has language packs for Traditional Chinese, Brazilian Portuguese, Russian, Polish, Czech and Hungarian (Autodesk's published language-pack list, not measured here). AutoCAD's spell checker ships about 20 dictionaries (*.dct names in Resources/Support).

Drawing text in AutoCAD: TrueType and SHX big fonts (CJK), Unicode \U+ escapes, complex-script shaping and right-to-left text through TrueType, vertical SHX text styles.

What CADCraft has

  • A display-time string catalog (crates/ui-egui/src/i18n/, landed with #36): a TSV per language (context, English source, translation, @plural rows), Edit → Interface Language with Auto (system language), live switching, a saved choice, and tests for coverage, placeholders and plurals (localization.md). The Ukrainian and German catalogs have 989 rows each, covering menus, command labels, tool groups and tooltips, the Start page, tabs, status controls, object snaps, drafting prompts, property labels and dialogs. Engine diagnostics, CLI/MCP responses and command history stay English, and uncatalogued text falls back to English. For scale: about 1,160 unique capitalised string literals exist in crates/engine and crates/ui-egui (grep, 2026-10-10).
  • Drawing text: TrueType/OpenType/.ttc through skrifa with per-character font fallback and FONTALT, so CJK characters render (#173). DXF text is written with \U+ escapes so non-ASCII survives in R2000 files (#169). Lines with right-to-left text get the Unicode Bidirectional Algorithm and OpenType shaping with harfrust (Arabic, Persian and Urdu joining, lam-alef, ZWNJ, marks; Hebrew), in TEXT and MTEXT including wrapping (#287). Left-to-right lines are still placed one glyph per code point: no shaping for Devanagari and other Indic scripts, and no vertical text. SHX fonts are not read; our stroke font stands in.
  • Text input: egui/winit IME. Several upstream IME fixes are queued as PRs (#110–#119: macOS Korean, emoji picker, Windows caret placement, X11 and Wayland), so CJK input is not yet reliable on every platform.

Languages

Order and columns from craftrules' progress-docs standard. Every UI percentage is measured from the catalogs (0 rows for every language without a catalog file). Hours are estimated: about 3–5 h per language for an Opus 5.5 agent to translate the ~990 catalog rows and fix layout, plus native review by a human; extending the catalog to the remaining English-only strings (engine diagnostics, uncatalogued text) is about 4–6 h, counted once in the first row.

Language Code UI strings translated Dialogs / tooltips / help Script support Native review Status Estimate to full
English en source (100%) 100% (help is a command reference, not AutoCAD-sized help) Latin: yes n/a full —
Simplified Chinese zh-Hans 0 (0%) 0% CJK glyphs render via fallback; IME fixes pending (#110–#119); no vertical text no none 8–12 h (includes extending the catalog, 4–6 h)
Spanish es 0 (0%) 0% Latin: yes no none 3–5 h
Hindi hi 0 (0%) 0% Devanagari: no shaping no none 3–5 h + 15–25 h shaping (shared with Arabic)
Arabic ar 0 (0%) 0% Drawing text shaped and laid out right to left (#287); the UI is not mirrored no none 3–5 h + 15–25 h RTL UI
French fr ≈ 900 catalog rows (gaps reported, English fallback) partial Latin: yes contributed by @pechnikov2026-star (#624); no native review yet partial 2–4 h
Russian ru ≈ 900 catalog rows (gaps reported, English fallback) partial Cyrillic: yes (bundled egui fonts) contributed by @pechnikov2026-star (#624); no native review yet partial 2–4 h
Portuguese pt 0 (0%) 0% Latin: yes no none 3–5 h
Indonesian id 0 (0%) 0% Latin: yes no none 3–5 h
Japanese ja 0 (0%) 0% CJK glyphs render; IME pending; no vertical text no none 4–6 h
German de 989 catalog rows (≈ 100% of the catalog; ≈ 80% of all UI strings, estimated: engine diagnostics and uncatalogued text stay English) dialogs and tooltips yes; command reference searchable in German Latin: yes (bundled egui fonts cover ä ö ü Ä Ö Ü ß; long strings will need layout checks) no native review partial 1–2 h
Korean ko 0 (0%) 0% Hangul renders; macOS Korean IME fixes pending (#118, #119) no none 4–6 h
Vietnamese vi 0 (0%) 0% Latin with stacked diacritics: renders per code point, untested no none 3–5 h
Ukrainian uk 989 catalog rows (≈ 100% of the catalog; ≈ 80% of all UI strings, estimated: engine diagnostics and uncatalogued text stay English) dialogs and tooltips yes; command reference searchable in Ukrainian Cyrillic: yes (bundled egui fonts) translated by a contributor; no second review partial 2–4 h
Czech cs 1,202 catalog rows; reference catalog and marked UI literals covered dialogs and tooltips yes; contextual menu headings; command reference searchable in Czech Latin: yes (bundled egui proportional and monospace fonts; Czech letters and quotes tested) AI-assisted by @Losminek; independent review pass; not yet proofread by a native speaker complete current catalog; English-only interface gaps remain native review + shared English-only UI work
Italian it 1,227 catalog rows; reference catalog and marked UI literals covered dialogs and tooltips yes; contextual menu headings (Visualizza / Vista, Edita / Modifica); command reference searchable in Italian Latin: yes (bundled egui fonts; accented letters tested) AI-assisted by Emanuele Bottelli (Claude), written from the English strings with Italian desktop-CAD vocabulary; no native proofreading pass yet complete current catalog; English-only interface gaps remain native review + shared English-only UI work

Other languages shipped: Ukrainian, Brazilian Portuguese, German, Czech, Russian, French and Italian. Czech and Brazilian Portuguese cover the reference catalog and every marked UI literal; engine diagnostics and uncatalogued text remain English. AutoCAD for Mac ships 7 non-English languages (zh-Hans, es, fr, ja, de, ko, it); of those, CADCraft now ships German, and additionally Ukrainian, which AutoCAD for Mac doesn't ship.

Total to put all twelve at full: about 55–95 Opus 5.5 hours (catalog extension 4–6 h, ten translations 30–50 h, complex-script shaping and RTL 30–45 h), plus native-speaker review for each language, which needs humans. Translations parallelise fully once the catalog exists.

Revision history

Date Change Summary
2026-10-12 minor Italian added: 1,227 rows, one/other plurals, two menu headings, locale/preference/plural/font tests; AI-assisted, native proofreading pending
2026-10-12 minor Brazilian Portuguese catalog completed by @RicSchonfelder: 238 rows added (1,231 total), now covering the reference catalog and every marked UI literal, gaps 0; bundled-font glyph test for the catalog's accented letters
2026-10-11 minor Czech added: 1,202 rows, one/few/other plurals, locale/preferences/menu/font/render tests; independent review pass; native proofreading pending
2026-10-11 minor German catalog landed: de preference and catalog, per-language plural rules; non-English languages 1 → 2; total hours 60–100 → 55–95
2026-10-10 minor Right-to-left drawing text: bidi and Arabic-script shaping in TEXT and MTEXT (#287)
2026-10-10 minor Ukrainian catalog landed on main (#36): catalog infrastructure exists, Ukrainian partial; total hours 70–110 → 60–100
2026-10-10 major First localization measurement against AutoCAD 2027 for Mac's bundle localizations