Skip to content

ru: use explicit "множество" for standard number sets - #822

Open
Kostenkov-2021 wants to merge 4 commits into
daisy:rufrom
Kostenkov-2021:ru
Open

Kostenkov-2021 wants to merge 4 commits into
daisy:rufrom
Kostenkov-2021:ru

Conversation

@Kostenkov-2021

@Kostenkov-2021 Kostenkov-2021 commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

Clarify Russian wording for membership of standard number sets (ℕ, ℤ, ℚ, ℝ). Add a dedicated set-member-number-set rule and update ClearSpeak/SimpleSpeak shared rules to speak e.g. "принадлежащих множеству целых чисел" instead of ambiguous/calque forms. Fix related translations in unicode-full (remove English OT markers, replace «член» → «элемент»), simplify interval terminology in general rules, add FunctionApplicationWord connector, and refine several UI phrases (table/diacritical labels). Update and add unit tests in tests/Languages/ru to assert the new phrasing.

Dependency

This PR depends on #840 for the intent inference required by the new norm,
limit, and gathered-expression speech rules. Merge #840 first, then update
this branch before rerunning CI.

Clarify Russian wording for membership of standard number sets (ℕ, ℤ, ℚ, ℝ). Add a dedicated set-member-number-set rule and update ClearSpeak/SimpleSpeak shared rules to speak e.g. "принадлежащих множеству целых чисел" instead of ambiguous/calque forms. Fix related translations in unicode-full (remove English OT markers, replace «член» → «элемент»), simplify interval terminology in general rules, add FunctionApplicationWord connector, and refine several UI phrases (table/diacritical labels). Update and add unit tests in tests/Languages/ru to assert the new phrasing.
This update improves Russian mathematical speech and navigation by fixing set-membership wording, compact Unicode operator and relation names, and table navigation boundary phrasing. It also adds targeted regression tests covering the corrected column navigation message and compact Unicode output.
Update Russian Unicode names in `Rules/Languages/ru/unicode-full.yaml` to use the orthographically correct `ё` variants for overline and underline descriptions. This keeps the terminology consistent across related symbols and aligns the translations with the language's spelling conventions.
@moritz-gross

moritz-gross commented Sep 27, 2026 •

Copy link
Copy Markdown
Collaborator

a job fails. Have you looked into this? does this look caused by changes in this PR or somewhere else?

@Kostenkov-2021

Kostenkov-2021 commented Sep 27, 2026 •

Copy link
Copy Markdown
Contributor Author

Hi @moritz-gross
As far as I understood, this appears to be the existing intermittent CI failure tracked in #781, rather than a failure caused by this PR.

The only failing job was Test (no-unsafe, Rules-minimized.zip). It passed 5,150 tests and then failed in Languages::ru::alphabets::script with:

RefCell already borrowed at src/speech.rs:2811

At that line, replace_single_char attempts to clear and reload unicode_full while an outer recursive replacement still holds a shared borrow of the same RefCell. Whether that reload is attempted depends on the extracted rule files' path/timestamp state, which explains why this has appeared intermittently with either Rules.zip or Rules-minimized.zip and with different languages/tests, as described in #781.

The corresponding Test (no-unsafe, Rules.zip) job passed, as did both normal Rust test jobs, Clippy, Python tests, packaging, and fuzzing. This PR does not change the failing script test or its mathematical-script mappings; its unicode-full.yaml changes are unrelated entries.

So I don't see evidence that the failure is caused by this PR. A rerun should confirm the intermittent nature of the issue.

Add Russian rules to recognize norms (double bars and magnitude) and nested double overline; treat paired absolute-value as "норма" and ordinary as "модуль". Fix multiline handling to skip duplicated '=' and final '.' in gathered/continued lines and announce visual lines. Add translations for named operators (max/min/sup/lim) including munder lower-limit phrasing and context-sensitive wording for overline and infinity in unicode. Adjust munder/mover default wording. Update and add unit tests (mtable, shared, linear_algebra) to cover these cases.

This branch has not been deployed

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

Labels

None yet

Projects

Status: Triage

Development

Successfully merging this pull request may close these issues.

2 participants