Is there a way to replace punctuation and abbreviations with text for TTS to read?

I have noticed that TTS engines are not that smart and just read what is thrown at them.

Some times punctuation should be read differently, like a dash being read as minus when in front of a negative number. Other times we use abbreviations in HA that when read out sound weird, like for a trend sensor that that a unit of measurement of meters per minute that the abbreviation is m/min so it gets read " m stroke min".

So putting the two examples above for a cloud base trend sensor I get TTS messages read out like: “Cloud base trend is dash five m stroke min” when I would like to end up with . . .
“Cloud base trend is minus five meters per minute”

Is there currently any way to setup a replacements dictionary or something like that that can be called in automatons?

Thanks for any help you can give!

Template Macros