Skip to content

Changing the swiftmac-default-voice-string doesn't change the voice #45

@parhamdoustdar

Description

@parhamdoustdar

This issue came up with the latest MacOS update, where Alex doesn't seem to be available, Setting the voice to another TTS like this didn't work either:

(setq swiftmac-default-voice-string "[{voice :com.apple.eloquence.en-US.Eddy}] [[pitch 1]]")

After debugging this, I found that the hashmap of defined voices doesn't get updated when this variable is changed.

I propose:

  1. Changing the swiftmac-default-voice-string into a custom using defcustom, and changing it to a more user-friendly name. This solves two problems: it makes changing the voice easier using Emacs' intuitive custom interface, and allows us to update the table of voices on change.
  2. Define a set property on the custom definition, which calls swiftmac-define-voice with the new value.

Voila! Now the user doesn't have to dig into the guts of the swiftmac-voices.el and dtk-speak.el to change their default voice :-)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions