Speaking with a French accent – OS X say

I just answered a fun question over at Ask Different. The questioner wanted to know how to make their Mac speak with French pronunciation.

By happy coincidence I recently stumbled upon someone else having fun with OS X’s say command and different internationalised voices. These voices are designed for use with a specific language and generally hidden from users of other languages.

However, the say command can still be told to use the voice regardless of the current language.

It happens that the voice Thomas is designed for the French language. Let’s have some fun:

say -v Thomas “Hello. I am speaking with a cute French accent.”

Say as Thomas

You can use the say command with OS X's Thomas voice to get French pronunciation. Try the following command in Applications > Utilities > Terminal.app: say -v Thomas "Bonjour. Je m'appelle Thomas."

We can wrap the say command up in an Automator service to make this useful.

Automator Service

To create the Automator Service:

  1. Launch Automator.app
  2. Create a new Service
  3. Add a Run AppleScript action
  4. Copy and paste in the AppleScript below:
    on run {input, parameters}
    do shell script “say -v Thomas ” & (quoted form of (input as string))
    return input
    end run
    
  5. Save the service as Speak in French
Automator.app say service Automator.app say service

To use the service:

  1. Select text in TextEdit.app or Safari.app
  2. Control + Click to reveal the Context Menu
  3. Select Services > Speak in French

Et voilà ! We turned a fun distraction into something useful.

Other Languages

Voices tuned for other languages beyond English and French are available. To discover the full list of voices and associated languages:
  1. Open System Preferences.app
  2. Select Dictation & Speech
  3. Select System Voice > Customize…
OS X 10 offers many languages OS X 10 offers many languages