Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The `say` command line tool. It will cause a synthesized voice to speak out loud whatever follows that command via text-to-speech.

This is especially useful for pranking your loved ones for whom you have remote shell access. ssh in and cause the other person’s computer to start talking to them... by name... asking for help... to be let out of the small metal box they’ve been trapped in for SO long...

This has been available in Mac OS for at least 15 years, and probably longer.



This incredibly useful to get alerted to some long-running job finishing or the like, e.g.

  ./some-lengthy-job | say Done
Back when I did lots of Apache Spark on a underpowered cluster, I had a script to lower Spotify volume, tell me the outcome (success, failure), then set Spotify back to original volume.

I still use this as a kitchen timer all the time when cooking while on my Macbook with utimer, which is basically a count-down timer for the shell (available via brew install utimer), e.g.

  utimer -c 10m | say Pasta is done


That redirects the output to say's stdin. You probably want '&&' and '||'.

    ./some-lengthy-job && say Done || say Failed


It was available on the Apple IIe, I remember loving that feature when I was just a little kid. I'm still amazed Woz was able to synthesize speech with hardware back then.


Serial Experiments Lain (1998) used PlainTalk for its title cards.

You can still recreate the title card voices in macOS.

    say -v Whisper "Weird: Layer zero one"


That doesn't seem to work on the latest Catalina ("Voice Whisper not found.") – do I need to install them separately?


Yeah. You can customise the available voices in Preferences > Accessibility > Speech

Whisper can definitely be installed on Catalina still. It's a 34 MB download.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: