Files
vectorcraft/docs
dotCooCoo 94e2a8e24b i18n: messages with literal braces match only their own catalog row
The message scan read every message as a format string, so a plain
literal such as `expected {"dataBase64": "…"}` became the catalog key
`expected {"dataBase64"}`, a template whose placeholder took the rest of
any message starting with "expected". The plug-in output error
`expected value at line 1 column 1` was then shown in German as
"erwartet: value at line 1 column 1".

- The scan doubles every brace of a message that is not a format string
  (a plain literal or a `&str` constant); `format!` strings and
  `#[error(...)]` strings keep their `{{`, `}}` and placeholders.
- 150 `@msg` rows in 23 catalogs are keyed by the full message with its
  braces doubled, and their translations write those braces doubled and
  carry the full JSON example of the English.
- An `@msg` row with no placeholder is an exact message under its text
  with `{{` and `}}` read as braces, so it is found at any length, and a
  nested JSON part translated by such a row shows single braces.
- The Hindi row for `give {key, value} or {values}` translates the whole
  message; it kept the English "or" and left out "give".

Docs: docs/development.md, the zh-hant.tsv header, docs/target-app-parity.md.
2026-11-13 06:34:40 -08:00
..