Skip to content

Beta to master#19773

Merged
seanbudd merged 4 commits into
masterfrom
beta
Mar 10, 2026
Merged

Beta to master#19773
seanbudd merged 4 commits into
masterfrom
beta

Conversation

@seanbudd

Copy link
Copy Markdown
Member

No description provided.

michaelDCurran and others added 4 commits March 10, 2026 11:20
…#19762)

Fixes #19654

### Summary of the issue:
The 32 bit synthDriverhost runtime introduced in PR #19432 Does not
contain correct version information in its executable.

### Description of user facing changes:

### Description of developer facing changes:

### Description of development approach:
* synthDriverHost's setup-runtime.py py2exe script now takes version and
publisher as commandline arguments, so that these can be set on the
executable dynamically.
* The github workflow and sconstruct pass the correct version and
publisher to the setup-runtime.py py2exe script.

### Testing strategy:
* [x] Locally compiled with scons synthDriverHost32Runtime, providing
custom version and publisher. Confirmed that the synthDriverHost
executable contains correct version and publisher information.
* [x] Create try bild. Confirming the same as above.

### Known issues with pull request:
None known.
Closes #19643
Summary of the issue:

When selecting Bangla language for NVDA, the whole interface is in English. This is because there had been an attempt to have NVDA translated in Bangla around 2022. Unfortunately, almost no translation at all has reached an NVDA release. As a result:

    In the Bangla interface file, no string at all is translated
    In the symbols.dic file, the vast majority of symbols are just English. Only 6 complex symbols have been modified. And among these 6 symbols:
        one of them is written ". sentence ending" (with an extra space), thus it does not actually control anything
        the decimal point just has no replacement, making the rule apparently malformed or at least un-useful and harder to understand

Description of user facing changes:

    Bangla won't be proposed as an NVDA language in the languages list.
    When using Bengali voice, the 4 valid Bangla/Bengali complex symbols will be reported in English. But users using Bengali voice will benefit of any change done in English symbol file since 2022 and in the future.
Copilot AI review requested due to automatic review settings March 10, 2026 22:18
@seanbudd seanbudd requested a review from a team as a code owner March 10, 2026 22:18
@seanbudd seanbudd requested a review from SaschaCowley March 10, 2026 22:18
@seanbudd seanbudd merged commit 0096260 into master Mar 10, 2026
12 of 14 checks passed
@github-actions github-actions Bot added this to the 2026.2 milestone Mar 10, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates NVDA locale dictionaries (primarily zh_TW) and adjusts the synthDriverHost32 runtime build invocation to pass version/publisher metadata through SCons and CI.

Changes:

  • Expanded/updated zh_TW symbol and character description dictionaries (units, Greek letters, pinyin tone-marked vowels, and various character mappings).
  • Switched the synthDriverHost32 runtime builder invocation in SCons to an argv-style command and added --version/--publisher passthrough into setup-runtime.py.
  • Updated CI to pass build version and publisher into the runtime builder step; removed source/locale/bn/symbols.dic.

Reviewed changes

Copilot reviewed 6 out of 7 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
source/locale/zh_TW/symbols.dic Adds/adjusts symbol pronunciations (units, Greek letters, pinyin diacritics, etc.).
source/locale/zh_TW/characterDescriptions.dic Adds/adjusts character descriptions (incl. Greek section and other symbol entries).
source/locale/bn/symbols.dic Removes the Bengali symbols dictionary file.
sconstruct Updates runtime builder command to argv form and passes version/publisher args.
runtime-builders/synthDriverHost32/setup-runtime.py Accepts --version/--publisher and applies them to metadata fields.
.github/workflows/testAndPublish.yml Passes version/publisher into runtime builder step in CI.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +1939 to +1942
ǖ 一聲 淤 none
ǘ 二聲 淤 none
ǚ 三聲 淤 none
ǜ 四聲 淤 none

Copilot AI Mar 10, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the Hanyu Pinyin section, ǖ/ǘ/ǚ/ǜ are described with the Chinese character “淤”, which doesn’t match the pattern used for other vowels (they reference the vowel letter itself). This likely should reference “ü” (or a consistent phonetic marker like ㄩ) so users understand these are ü with tone marks.

Suggested change
ǖ 一聲 none
ǘ 二聲 none
ǚ 三聲 none
ǜ 四聲 none
ǖ 一聲 ü none
ǘ 二聲 ü none
ǚ 三聲 ü none
ǜ 四聲 ü none

Copilot uses AI. Check for mistakes.
Comment on lines 22219 to +22226
# 其他符號
〇 中文數字〇
π (希臘字母 Pi)
Ω (大寫希臘字母 Omega)
μ (希臘字母 Mu)
Å (長度單位 angstrom,稱為埃或埃米)
· (中間點,或簡體中文的間隔號)
× (乘號)
∕ (除號斜線)
÷ (除號)
Å (長度單位 angstrom)
K (絕對溫度單位 Kelvin)

Copilot AI Mar 10, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Å is still present in zh_TW/symbols.dic (spoken as “埃”), but its character description was removed here. Without an entry, NVDA will likely fall back to the Unicode name (e.g., “拉丁大寫字母A上圓圈”), which is a regression for users expecting the angstrom unit description. Consider restoring an Å description (or explicitly mapping it to the same angstrom description as Å).

Copilot uses AI. Check for mistakes.
Comment on lines +36 to +39
if args.version is not None:
version = args.version
if args.publisher is not None:
publisher = args.publisher

Copilot AI Mar 10, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overriding the local version variable from --version doesn’t affect formatBuildVersionString(), which uses buildVersion.version_year/version_major/version_minor/version_build. When this script runs outside the full dist builder, version_build is typically 0 (no _buildVersion.py), so the file version metadata may still not match the SCons build version. If the goal is to align runtime metadata with the build, consider also passing a build number (and/or updating buildVersion globals) or deriving the numeric version string from the provided version args.

Copilot uses AI. Check for mistakes.
Comment on lines +569 to +584
η aita none
θ Theta none
ι Iota none
κ Kappa none
λ Lambda none
μ Mu none
ν Nu none
ξ zeye none
ο omacron none
π Pi none
ρ Rho none
σ Sigma none
τ Tau none
υ up salon none
φ Phi none
χ kai none

Copilot AI Mar 10, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Several Greek letter names appear to be misspelled, which will result in incorrect speech output (e.g., η should be “Eta”, ξ should be “Xi”, ο should be “Omicron”). Please correct these labels to the standard Greek letter names for consistency with the zh_TW characterDescriptions entries.

Suggested change
η aita none
θ Theta none
ι Iota none
κ Kappa none
λ Lambda none
μ Mu none
ν Nu none
ξ zeye none
ο omacron none
π Pi none
ρ Rho none
σ Sigma none
τ Tau none
υ up salon none
φ Phi none
χ kai none
η Eta none
θ Theta none
ι Iota none
κ Kappa none
λ Lambda none
μ Mu none
ν Nu none
ξ Xi none
ο Omicron none
π Pi none
ρ Rho none
σ Sigma none
τ Tau none
υ Upsilon none
φ Phi none
χ Chi none

Copilot uses AI. Check for mistakes.
Comment on lines +582 to +584
υ up salon none
φ Phi none
χ kai none

Copilot AI Mar 10, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The pronunciation labels for υ and χ appear incorrect (“up salon”, “kai”). These should use the standard Greek names (“Upsilon”, “Chi”) to avoid incorrect speech output.

Suggested change
υ up salon none
φ Phi none
χ kai none
υ Upsilon none
φ Phi none
χ Chi none

Copilot uses AI. Check for mistakes.
Comment on lines +593 to +601
Η aita none
Θ Theta none
Ι Iota none
Κ Kappa none
Λ Lambda none
Μ Mu none
Ν Nu none
Ξ zeye none
Ο omacron none

Copilot AI Mar 10, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Uppercase Greek letter entries repeat the same misspellings (Η/Ξ/Ο). Please update these to the correct standard names (“Eta”, “Xi”, “Omicron”) to match the lowercase section and the characterDescriptions dictionary.

Suggested change
Η aita none
Θ Theta none
Ι Iota none
Κ Kappa none
Λ Lambda none
Μ Mu none
Ν Nu none
Ξ zeye none
Ο omacron none
Η Eta none
Θ Theta none
Ι Iota none
Κ Kappa none
Λ Lambda none
Μ Mu none
Ν Nu none
Ξ Xi none
Ο Omicron none

Copilot uses AI. Check for mistakes.
Comment on lines +606 to +608
Υ up salon none
Φ Phi none
Χ kai none

Copilot AI Mar 10, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Uppercase Υ and Χ also use the incorrect labels (“up salon”, “kai”). Please change these to the standard names (“Upsilon”, “Chi”) so speech output is correct.

Suggested change
Υ up salon none
Φ Phi none
Χ kai none
Υ Upsilon none
Φ Phi none
Χ Chi none

Copilot uses AI. Check for mistakes.
㎝ 公分 none
㎞ 公里 none
㏎ 公里 none
㏄ cc none

Copilot AI Mar 10, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The ㏄ entry is labeled as “cc” while nearby unit symbols are localized (e.g., ㎞→公里). Consider using a localized reading such as “立方公分”/“西西” (or another established term) to keep unit pronunciations consistent within this dictionary.

Suggested change
cc none
立方公分 none

Copilot uses AI. Check for mistakes.
@github-actions github-actions Bot requested a deployment to snapshot March 10, 2026 23:59 Abandoned
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.

5 participants