If I'm reading that right, the labels on the buttons contain the same text you pass to the speech engine? Does that actualy produce correct-sounding results?

Warning: Unless otherwise stated, code is untested. Do not use without understanding. Code is posted in the hopes it is useful, but without warranty. All copyrights are relinquished into the public domain unless otherwise stated. I am not an angel. I am capable of error, and err on a fairly regular basis. If I made a mistake, please let me know (such as by replying to this node).

What I remember from Jouke's demo at the Perl Mongers Amsterdam meeting last month, was that the text on the button is the default phonetic string passed to the speech synthesizer, but that you can override it. This was e.g. particularly needed for Jouke's name, which is pronounced "jauwku" rather than "jooki" (hope I got that right ;-).

The quality of speech is actually very dependent on the speech synthesizer used. We heard some examples from very hard to understand, to a Flemish speakng female voice that was hard to differentiate from real.

Indeed, like liz already explained (but I would just like to confirm it here): the text you see on the buttons are the default text that is fed to the speech synthesizer. You can however also enter a 'phonetical text', which you can enter in any way you like to make it sound right.

This is not always needed. The BrightSpeech synthesizer liz mentioned (the Flemish speaking female) has a phonetical lexicon which you can feed, so you don't need to enter a specifical phonetical text.

When putting a smiley right before a closing parenthesis, do you:

Use two parentheses: (Like this: :) )
Use one parenthesis: (Like this: :)
Reverse direction of the smiley: (Like this: (: )
Use angle/square brackets instead of parentheses
Use C-style commenting to set the smiley off from the closing parenthesis
Make the smiley a dunce: (:>
I disapprove of emoticons
Other