Skip to content

i18n (cs): translate labels that bypass the catalog lookup (file filters, diagnostics, credits, gradients, print marks) - #1259

Merged
bflatastic merged 1 commit into
storytold:mainfrom
Losminek:cs-ui-code
Oct 12, 2026
Merged

bflatastic merged 1 commit into
storytold:mainfrom
Losminek:cs-ui-code

Conversation

@Losminek

Copy link
Copy Markdown
Contributor

Follow-up to #1189 and #1226 (Czech catalog). The catalog is complete, but a few labels never reach the
catalog lookup, so they still show in English under Czech. This PR translates them where they are shown,
from a variable or a template, so every other language keeps its current behaviour and falls back to
English. No new tl!("literal") keys, so only cs.tsv gains rows.

What changes

  • File dialog filters (desktop apps/vectorcraft/src/main.rs, web apps/vectorcraft-web/src/web.rs):
    filter names such as "All readable files", "Swatch libraries", "PDF presets" are looked up when the
    dialog is built (context file-filter). Extensions and format names stay as they are.
  • Diagnostics line (chrome.rs): the words render / ui are looked up (context diagnostics);
    numbers, ms and fps stay.
  • New Document: the suggested name is the template Preset {number} instead of format!("Preset {}").
  • Credits: the PRs column header and the contributor tooltip go through named placeholders, with
    @plural rows for PR and commit counts. Names and handles stay unchanged.
  • Gradients: Czech needs the adjective before the noun and in agreement, so {kind} Gradient now reads
    "Lineární přechod" / "Kruhový přechod"; Radial got a gradient-kind context for the masculine form.
  • "Japanese" collision: the English key is both the language name and a printer mark style in PDF/Print.
    The mark style now uses a mark-style context ("Japonské"), so the language stays "Japonština". English
    output and the stored id are unchanged.
  • Regression tests for the file filters, credits plurals, gradient wording and the mark-style context;
    docs/localization-parity.md, docs/gaps.md, docs/roadmap.md, docs/target-app-parity.md and
    ROADMAP.md note the change (scores unchanged; the stale "Czech (menus only)" line is corrected).

I also checked the search box placeholder, Home screen, status bar, toolbar and panel tooltips and the
Preferences window: they already use lookups, so nothing else needed changing there. Workspace names stay
English on purpose (MENU_KEEP_AS_IS).

Checks

Clean environment, --locked: cargo fmt --all -- --check clean; cargo test -p vectorcraft-ui-egui:
1,043 passed, 0 failed (including the bundled-font glyph test); cargo clippy -p vectorcraft-ui-egui --all-targets -- -D warnings clean; desktop and wasm cargo check OK.

Review

The 19 new Czech rows were drafted with AI assistance (Codex and Claude) and checked against the existing
catalog terminology; they sit under a comment in cs.tsv and have not yet been proofread by a native speaker. Wording worth a second look: "Všechny čitelné soubory" (All readable
files), "Všechny soubory pro umístění" (All placeable files) and the contributor tooltip.

🤖 Generated with Claude Code

Localize native/web file filters, diagnostic labels, numbered presets
and contributor tooltips with English fallback and Czech plural forms.
Fix gradient adjective agreement and disambiguate Japanese printer marks
in PDF/Print choices and summaries. Keep file extensions and names intact.

Add Czech catalog rows and regression coverage; update localization evidence.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@bflatastic
bflatastic merged commit 70e3580 into storytold:main Oct 12, 2026
1 check passed
@bflatastic

Copy link
Copy Markdown
Member

Thanks @Losminek! The Czech labels that bypassed the catalog now show in Czech.

I rebased it onto main and merged it after the full local gate passed on the combined branch. The rebase had conflicts with tonight's other merges: cs.tsv and tests_modal.rs (both sides kept), and the docs. In docs/roadmap.md (M14 row) and docs/target-app-parity.md (UI chrome row) I kept main's newer rows, so the Czech note in those two rows didn't make it; it is still in docs/localization-parity.md and docs/gaps.md. Live check on Windows: in Czech the status bar reads "vykreslení … · rozhraní …".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants