mirror of
https://github.com/storytold/effectcraft.git
synced 2026-10-27 19:47:12 -06:00
The second pass over the interface below the menu bar: the strings that are technical terms or proper nouns - `Mercury GPU Acceleration (…)`, `8/16/32 bits per channel`, `OCIO (built-in ACES config)`, `sRGB IEC61966-2.1 (default)`, `Import Photoshop File`, `Current Settings`, the viewer's channel and Fast Previews items. Each wording was checked against the installed After Effects 26.5.0 Simplified Chinese, the way the menu bar was in #353. Terms Adobe keeps in English (`Display P3`, `HDTV (Rec. 709)`, `RGB`, `Alpha`, `H.264`, `ProRes`) need no row: a missing row falls back to the English source, which is the decision. The text reaches the catalog through the funnels that draw it, so one change each covers every call site: - `forms.rs`: field labels, notes, choice items and info bodies, plus `dialogs::modal`'s title - the modal id stays keyed on the untranslated source, so changing the language cannot move it; - `settings.rs`: page titles, sections, notes, buttons, setting labels and choice items (the page table itself is engine data and cannot reach the catalog); - `comp_settings.rs` (3D renderer), `key_dialogs.rs::combo` (Current Settings and the roving items), `properties.rs` + `timeline.rs` (the text animator menu), `dialogs.rs` (About links); - `render_queue.rs`: the Opus bitrate goes through `tr_args`, so the value is substituted after the lookup - worth calling out, because building the string with `format!` and translating the result looks up the assembled text and silently stays English (the same trap as the project settings' GPU label, which this commit also fixes). 30 rows join the Simplified catalog. The same keys join the Traditional one with the English source as their value: the tests require the two lists to match, and the Traditional wording is the translator's call. Tests: `CONVERTED` gains the three engine files whose strings the interface draws (`prefs.rs`, `viewer.rs`, `commands/viewer_cmds.rs`); each holds no drawn literals, so the literal scan stays green and the new rows have a source to be "used" from. `cargo test -p effectcraft-ui-egui --lib i18n`: 16 passed.