github Speech-Rule-Engine/speech-rule-engine v3.2.0
Italian Localisation, Dynamic Speech Rule Loading, Nemeth Improvements

latest releases: v4.1.0-beta.10, v4.1.0-beta.8, v4.1.0-beta.9...
3 years ago

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.

Don't miss a new speech-rule-engine release

NewReleases is sending notifications on new releases.