Skip to content

fix: Speak unfenced tables without "comma" between rows (#890) - #915

Open
moritz-gross wants to merge 1 commit into
daisy:mainfrom
moritz-gross:fix-890-array-comma
Open

moritz-gross wants to merge 1 commit into
daisy:mainfrom
moritz-gross:fix-890-array-comma

Conversation

@moritz-gross

Copy link
Copy Markdown
Collaborator

A table with no fences gets the array intent, but English had no speech rule for array, so it fell through to the catch-all function rule ("array of x comma y") and spoke "comma" between the rows.

The English default table rule now handles array as well as mtable, as Portuguese already does. This also fixes NumColumns=1 (missing $), which always gave "columns", e.g. "1 columns".

Updates 4 expected strings in tests/Languages/en/mtable.rs and adds a test using the MathML from the issue.


I think this already fixes it. More broadly, my question is how we want to treat "table" / "array" / "matrix" as different types of objects, or not.

A table with no fences gets the `array` intent, but English had no speech
rule for `array`, so it fell through to the catch-all function rule
("array of x comma y") and spoke "comma" between the rows.

The English default table rule now handles `array` as well as `mtable`,
as Portuguese already does. This also fixes `NumColumns=1` (missing `$`),
which always gave "columns", e.g. "1 columns".

Updates 4 expected strings in tests/Languages/en/mtable.rs and adds a
test using the MathML from the issue.
@moritz-gross
moritz-gross requested a review from NSoiffer October 24, 2026 22:30
@moritz-gross moritz-gross added bug Something isn't working rules Pertains to Rules labels Oct 24, 2026
@github-actions

Copy link
Copy Markdown
Linux library size: 0.59 MiB (0.00%)
Revision Release liblibmathcat.so
Base (1309ab4) 0.59 MiB (614,768 bytes)
PR (8152040) 0.59 MiB (614,768 bytes)
Change 0 bytes (0.00%)

Built with default features, Rust 1.96.0, and Ubuntu 24.04. Workflow run.

@NSoiffer

Copy link
Copy Markdown
Collaborator

I'm leaning towards that it should be spoken as "array with ..." as opposed to "table with ...". Thoughts?

Also, in looking into this, I realized that the :array:by-column (and for that matter, matrix:by-column and default tables) is not implemented. That's probably a separate fix...

@moritz-gross

Copy link
Copy Markdown
Collaborator Author

I'm also in team array

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

bug Something isn't working rules Pertains to Rules

Projects

Status: Triage

Development

Successfully merging this pull request may close these issues.

2 participants