Italian Localisation
Includes full Italian localisation of both MathSpeak and ClearSpeak rule sets, thanks to financial support by TextHelp.
Partial overhaul of the speech rule system.
A full overhaul of the speech rules will happen after SRE has moved to TypeScript.
General Improvements
- Reduces as much as possible disjunctive preconditions. Handling this via the indexing structure speeds up processing.
- New and improved heuristics for: scripts and accents, juxtaposition handling, named and simple function handling
- Gets rid of some oddities in the MathSpeak rule sets for English:
- overtilde, undertilde, overbar, underbar
- integral is now handled similar to sum and other big operators.
- Additions to ClearSpeak for handling of crossed out and enclosed expressions
Dynamic loading of speech rules
- Speech rule sets are now loaded dynamically together with the locale translations of unicode characters
- Ensure to wait for rules being loaded using
engineReady
- Adds options to load local rule sets and prune the rule trie:
*file
,prune
parameters can be passed to CLI and browser library.
Nemeth Improvements
This work was sponsored by the American Action Fund.
- Improvements to the Nemeth translation
- English characters with fonts
- Literal translation of functions and units
- Many fixes from our PreTeXt project thanks to Michael Cantino
- Flexible loading of specially transcribed symbols
Semantic Improvements
- Clean separation of selectable semantic heuristics
- New heuristics released into the wild: complex juxtaposition, multioperator combination, prefix function detection
- Explicit treatment of large spacing
- Recognition of
mglyph
elements - Surfacing of links and glyphs as images
Removes caching
Caching of computed speech has been fully removed. From v1.0.0 to v3.1.1 SRE used caching of speech recursively computed that could be reused when speech is generated recursively. This feature is rarely used in practice,
Moreover it was error prone and in the way of future plans to employ more parallelisation.
Note: During recursively enriching large expressions with speech strings (option speech: deep
) there can be some
Experiments with large data sets have shown that while there is some slow down of processing it is linear by a factor of at most 2. However, should you see a more significant slow down, please file an issue.