Skip to Content.
Sympa Menu

emacspeak - [Emacspeak] SwiftMac prosody mayhem after upgrading macOS Sonoma to Tahoe

Subject: Emacspeak discussion list

List archive

[Emacspeak] SwiftMac prosody mayhem after upgrading macOS Sonoma to Tahoe


Chronological Thread 
  • From: aleland.tech.list AT fastmail.com
  • To: <emacspeak AT emacspeak.net>
  • Subject: [Emacspeak] SwiftMac prosody mayhem after upgrading macOS Sonoma to Tahoe
  • Date: Fri, 06 Feb 2026 11:58:08 -0500


Hello Emacspeakers,

I recently upgraded from macOS Sonoma to Tahoe 26.2, and immediately noticed
an unwelcome change in the way that SwiftMac 4.3.6 (Emacspeak 60.0; emacs
30.2; using emacs-plus@30 via homebrew) handled longer sentences. All the
voices I tried (Samantha, Tom, David; both enhanced and compressed) would
suddenly pause at seemingly random places in a sentence, where there was no
punctuation. This happened across emacs, in nov.el, org-mode, notmuch,
anywhere I read text with longer sentences.

I isolated it by testing the same text three ways: in Emacs with my full
config, in Emacs with emacs -Q loading only Emacspeak, and in TextEdit read
by VoiceOver using the same voice. VoiceOver read smoothly; both Emacs
configurations had the pauses. So it wasn't my config, and it wasn't the
macOS voice engine.

Then, using a method that I'm hesitant to admit may have included a look at
the swiftmac source with the help of an AI coding tool (is this a faux pas to
admit, let alone deploy? The etiquette around AI seems to be fraught at best
in FLOSS-land), I discovered the chunkText function in main.swift, which as
far as I can tell, splits all text into 15-word chunks, each sent as a
separate AVSpeechUtterance. There's an inherent gap, my friendly tool
informed me, between utterances, and Tahoe appears to have increased that gap
enough to become audible, whereas it worked differently under Sonoma?
VoiceOver may not chunk this way, which is why it's unaffected?

However, with the help of my confident, controversial, possibly problematic
AI tool, I changed maxWords from 15 to 200 in chunkText() and rebuilt
SwiftMac. This fixed the pauses for me! Wondering if anyone else had this
prosody problem and if you're mad at me for using AI to troubleshoot and if
this information is at all helpful.

As an aside, I had to abandon the Alex voice altogether, because after
upgrading, both VoiceOver and SwiftMac have Alex pausing way too long after
full stops so that problem must be a change in the TTS itself.

Off-topic epilogue: This experience of having my workflow disrupted so
intensively (I read a ton of text in emacspeak for work and these random
pauses really messed with my speed and comprehension) by a mere system
upgrade has me considering trying out Linux as a daily driver, where e.g.
Debian/Emacspeak/espeak-ng would seem to be a more stable workflow less prone
to disruption by Cupertino caprice. Do you agree with this assessment?

Thanks as ever,
Andrew




Archive powered by MHonArc 2.6.19+.

Top of Page