Repository navigation
i18n: translate the read-root, linked JavaScript and graph design refusals - #7405
Merged
bflatastic merged 5 commits intoNov 15, 2026
Merged
Conversation
…usals
No complete-message catalog had a row for "a linked JavaScript file is
outside the read roots" (an SVG or SVGZ export or save of a document
that links a script outside the read roots) or for "the art of a graph
design in a graph series is drawn again from the design: edit the
design to change it" (an appearance edit of only that art), so the
status bar showed both in English. "the library's file is outside the
read roots" (Copy to User Defined) and "{file} names more than one
linked JavaScript file" (svgInteractivity.removeFile) had no row in ca,
el, fi, hi, ka and vi.
- Add the two refusals to 20 complete-message catalogs and the two
siblings to ca, el, fi, hi, ka and vi (52 rows), next to each
catalog's read-root and graph-design link rows, using their terms.
The nl, sv and tr rows and the other catalogs' sibling rows are in
storytold#7362, storytold#7370, storytold#7359, storytold#7355, storytold#7316, storytold#7307, storytold#7354, storytold#7314, storytold#7350, storytold#7337
and storytold#7352.
- Add a test that checks each reason's row in every complete-message
catalog that has one (translated, keeps `{file}`, and shown inside
the invalid-parameters error of the command that returns it), and
requires at least one catalog to have a row for each reason.
Contributor
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 32 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. |
This was referenced Nov 14, 2026
3 of 4 tasks
This was referenced Nov 14, 2026
bflatastic
pushed a commit
that referenced
this pull request
Nov 14, 2026
…t no catalog had untranslated_report lists 167 status and error messages that no complete-message catalog translates. zh-hans.tsv gains 114 @msg rows for the ones no open pull request covers: 3D and Revolve limits, image export and encoding errors, color profiles, color books and swatch exchange files, binary DXF and DWG import, path operations, swatch, graphic style and action set libraries, and zip, script and regular expression errors. Placeholders, backticked names, command ids and listed values stay as the English writes them. The other 53 (composite fonts, SVG filters, read roots and graph design) are left to #7211, #7378 and #7405. docs/localization-parity.md and docs/target-app-parity.md give the new counts: 3,554 @msg rows, and 55 messages the report lists for zh-hans, all of them translated by open pull requests.
This was referenced Nov 14, 2026
bflatastic
pushed a commit
that referenced
this pull request
Nov 14, 2026
The untranslated report listed 167 status and error messages that no complete-message catalog translated. pt-br.tsv now has an @msg row for the 114 of them that no open pull request already translates: messages of the 3D and Revolve effects, the image encoders, color profiles, swatch exchange files, color books and DXF import. Placeholders, parameter names and literal values stay as the English writes them. The other 53 (composite font, SVG filter, read root and graph design messages) are translated by open #7211, #7378 and #7405; adding them here too would make bundled_catalogs_are_consistent fail on a duplicate row once those merge.
bflatastic
pushed a commit
that referenced
this pull request
Nov 14, 2026
The untranslated report lists 168 status and error messages that none of the 23 complete-message catalogs translates, so a Catalan interface showed them in English. ca.tsv gets 115 @msg rows under one comment line at the end of the file, written with the catalog's existing terms. Each row keeps the English key, its placeholders, backticked names, parameter names and accepted values (smallThumb, RGB, CMYK, Lab, Gray, sRGB, NaN, UTF-8) unchanged. The 53 messages that open #7211, #7378 and #7405 translate are left out, so the catalogs stay consistent.
bflatastic
pushed a commit
that referenced
this pull request
Nov 14, 2026
On main, the untranslated report lists 167 status and error messages under "messages, all 23 languages checked": no complete-message catalog has a row for them, so the Japanese interface shows them in English. - ja.tsv gains 114 @msg rows for the listed messages: image export and encoding errors, color profiles, color books and swatch exchange files, binary DXF and DWG import, 3D and Revolve limits, and script, zip, line and file errors. The 53 listed messages that #7211, #7378 and #7405 translate are left out. - It gains 10 @msg rows for messages other catalogs translate and Japanese lacked: the Banner Hems and Grommets errors, a parameter range and the failed recovery save. The three script and RTF parsing errors that #7314 adds are left out. Placeholders, parameter names, command ids and literal values stay as the English writes them, and the rows follow the catalog's Japanese message conventions.
bflatastic
pushed a commit
that referenced
this pull request
Nov 14, 2026
untranslated_report lists status and error messages that no complete-message catalog translates. cs.tsv gains 114 @msg rows for the ones no open pull request covers: 3D and Revolve limits, image export and encoding errors, color profiles, color books and swatch exchange files, binary DXF and DWG import, path operations, swatch, graphic style and action set libraries, and zip, script and regular expression errors. Placeholders, backticked names, command ids and listed values stay as the English writes them. The report still lists 54 messages for every language: 53 composite font, SVG filter, read root and graph design errors left to #7211, #7378 and #7405, and "`index` must be a whole number". The Czech row of docs/localization-parity.md gets the new counts, and docs/target-app-parity.md lists the change.
bflatastic
pushed a commit
that referenced
this pull request
Nov 14, 2026
… had untranslated_report lists 167 status and error messages under "messages, all 23 languages checked". pl.tsv gains @msg rows for 114 of them, in one commented block at the end of the file: image export and encoding errors, color profiles, color books and swatch exchange files, binary DXF and DWG import, 3D and Revolve limits, and script, zip, line and file errors. Placeholders, parameter names, command ids and literal values stay as the English writes them. The other 53 are translated by #7211, #7378 and #7405 and are left out.
bflatastic
pushed a commit
that referenced
this pull request
Nov 14, 2026
…g had untranslated_report lists 168 status and error messages that none of the 23 complete-message catalogs translates. fi.tsv gains a row for 115 of them, in one commented block at the end of the file: image export and encoding errors, color profiles, color books and swatch exchange files, binary DXF and DWG import, 3D and Revolve limits, and script, zip, line and file errors. Placeholders, parameter names and literal values stay as the English writes them, and the rows use the catalog's existing terms (Pyöräytä, Segmentit, Varjot, värimalli, väripiste, painolevy, toimintosarjatiedosto). The other 53 listed messages are left out because open pull requests #7211, #7378, #7405 and #7434 add Finnish rows for them.
bflatastic
pushed a commit
that referenced
this pull request
Nov 14, 2026
The untranslated report listed 167 status and error messages with no row in any complete-message catalog, and 13 more that other catalogs translate but Italian did not, so with the interface in Italian these messages showed in English. - it.tsv gains 114 `@msg` rows for the listed messages: image export and encoding errors, color profiles, color books and swatch exchange files, binary DXF and DWG import, 3D and Revolve limits, and script, zip and file errors. - it.tsv gains 12 `@msg` rows for the Banner Hems and Grommets errors, three parameter checks and the failed recovery save. - The rows sit in two commented blocks after the existing message rows. - The 53 listed messages that open #7211, #7378 and #7405 translate (composite fonts, SVG filters, read roots and graph designs), and the justification order error that open #7116 translates, are left out, so no row is added twice. - Placeholders, parameter names, command ids and literal values stay as the English writes them. The translations use the catalog's existing terms. - docs/localization-parity.md and docs/target-app-parity.md give the Italian counts: 3,560 `@msg` and 48 `@msgplural` rows, 54 messages still listed.
bflatastic
pushed a commit
that referenced
this pull request
Nov 14, 2026
The untranslated report listed 167 status and error messages that none of the 23 complete-message catalogs translates. The Ukrainian catalog now has an @msg row for 114 of them: the errors of the image encoders, color profiles, swatch exchange files and color books, 3D and Revolve, path operations, DXF import, the script engine and the parameter checks. Placeholders, backticked names, accepted values and limits stay as the English writes them. Open #7211, #7378 and #7405 translate the other 53.
Main's German catalog gained the rows for the linked JavaScript read-root refusal and the graph design art refusal, so this branch's copies made bundled_catalogs_are_consistent fail on duplicate rows.
Member
|
Merged, thanks @dotCooCoo! It passed its CI checks. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What and why
Two error reasons that #7264 and #7320 added had no
@msgrow in any of the 23 complete-message catalogs, so the status bar showed them in English in every language: "a linked JavaScript file is outside the read roots" (crates/engine/src/cmd/fileio/access.rs, an SVG or SVGZ export or save of a document that links a script outside the read roots) and "the art of a graph design in a graph series is drawn again from the design: edit the design to change it" (crates/engine/src/cmd/appearance.rs, an appearance edit of only that art). Two reasons of the same features, "the library's file is outside the read roots" (swatch.library.copyToUser) and "{file} names more than one linked JavaScript file" (svgInteractivity.removeFile), had no row in ca, el, fi, hi, ka and vi.crates/ui-egui/src/i18n/*.tsv). de has both refusals onmainsince 9ab8b6c, so this pull request no longer adds them there. nl (i18n: Dutch translates 1,813 of the status and error messages the untranslated report lists #7362), sv (i18n: Swedish translates 464 of the status and error messages the untranslated report lists #7370) and tr (i18n: Turkish has a row for 1,811 of the messages the untranslated report lists #7359) get all four rows from their own open catalog pull requests, and cs, es, fr, hu, ja, ko, ru and zh-hant get the two other reasons from theirs, so this pull request does not add those rows.automation path rejected: outside the read roots {roots}: {path}row or its graph-design link row, and uses that catalog's existing terms for read roots, linked JavaScript files and graph designs.{file}stays a placeholder in every row.Engine, CLI and MCP errors stay in English; only the desktop's display of these messages changes.
How it was tested
New test
i18n::tests::read_root_script_and_graph_design_reasons_are_translated(crates/ui-egui/src/i18n/tests.rs), which fails without the rows (no complete-message catalog has a `@msg` row for "a linked JavaScript file is outside the read roots"): each reason is a message literal of the engine and has a row in at least oneCOMPLETE_MESSAGEScatalog, and in every such catalog that has a row for it, the row is translated with the same{file}count,message()returns that row, and the invalid-parameters error of the command that returns the reason shows the translated reason with the command id.Focused checks on the final tree, on
mainat1e4e353:cargo fmt -p vectorcraft-ui-egui -- --check.cargo fmt --all -- --checkreports onlycrates/svg/src/lib.rs, which this pull request does not change;mainat1e4e353has the same formatting difference.cargo clippy -p vectorcraft-ui-egui --all-targets -- -D warningscargo check --workspace --testscargo test -p vectorcraft-ui-egui --lib i18n: 116 passed, 0 failed.cargo xtask brands,layers(30 crates) andassets(337 files).cargo xtask ciruns in this pull request's CI.Checklist
cargo xtask cipasses (fmt, clippy, tests, assets, brands, layers, wasm).unwrap(),expect(),panic!,unreachable!,todo!orunimplemented!outside tests, and no unchecked indexing on data from files, parameters ormessages. Errors are returned as
Resultand shown to the user(why and how).
ASSETS.md.