This module defines the generic TTS interface.
Select capitalization PRESENTATION and preview representative text. Set the option buffer-locally by default. With interactive prefix GLOBAL, also set the global default and use it in the current buffer. (fn PRESENTATION &optional GLOBAL)
Ignore ARGUMENTS, do nothing, and return nil. This function accepts any number of arguments in ARGUMENTS. Also see ‘always’. (fn &rest ARGUMENTS)
Select and start an local speech server interactively. Local server lets Emacsvox on a remote host connect back via SSH port forwarding for instance. Argument PROGRAM specifies the speech server program. Port defaults to tts-local-server-port (fn PROGRAM &optional PROMPT-PORT)
Clear the buffer override and restore automatic punctuation policy.
Set character scale FACTOR for speech rate. Speech rate is scaled by this factor when speaking characters. Not presently used by either Dectalk or Viavoice TTS. Interactive PREFIX arg means set the global default value, and then set the current local value to the result. (fn FACTOR &optional PREFIX)
Set speech rate to one of nine predefined levels. Interactive PREFIX arg says to set the rate globally. Formula used is: rate = tts-speech-rate-base + tts-speech-rate-step * level. (fn &optional PREFIX)
Set legacy language ALIAS to LANG. Signal a user error when logical voices own language routing. (fn ALIAS LANG)
Set punctuation mode to all. Interactive PREFIX arg sets punctuation mode globally. (fn &optional PREFIX)
Set punctuation mode to some. Interactive PREFIX arg sets punctuation mode globally. (fn &optional PREFIX)
How enabled capitalization indication is presented. ‘spoken’ says "cap" or "all caps". ‘tone’ places a short tone at the capitalized boundary, and ‘spoken-tone’ combines both presentations. ‘custom’ publishes capitalization facts for personal aural rules without adding a built-in presentation. ‘none’ suppresses capitalization presentation while leaving ‘tts-caps’ enabled. Camel-case splitting remains controlled independently by ‘tts-split-caps’.
Default Value:
tone
Set this to your preferred cloud TTS server.
Default Value:
"cloud-outloud"
Engine we use for our local TTS server.
Default Value:
"outloud"
Virtual sound device to use for notifications stream. Set to nil to disable a separate Notification stream. If you set the device here, make sure it exists first. For SwiftMac, set this to ‘left’ or ‘right’. For Omnivox, ‘left’, ‘right’, or ‘both’ starts a separately routed second process; nil keeps notifications on the main process and its route.
Default Value:
nil
Automatic punctuation modes, ordered from specific to general. Each entry maps a major mode to ‘all’, ‘some’, or ‘none’. The first entry for which ‘derived-mode-p’ succeeds supplies the buffer policy. A buffer override set through ‘tts-set-punctuations’ takes precedence. When no entry matches, the default value of ‘tts-punctuation-mode’ is used.
Default Value:
((agent-shell-mode . all) (2048-mode . some) (eat-mode . all) (eshell-mode . all) (eww-mode . some) (Man-mode . all) (speedbar-mode . all) (sudoku-mode . some) (term-mode . all) (vterm-mode . all) (org-mode . some) (markdown-mode . some) (muse-mode . some) (LaTeX-mode . some) (TeX-mode . some) (texinfo-mode . some) (conf-unix-mode . all) (html-helper-mode . all) (sgml-mode . all) (xml-mode . all) (nxml-mode . all) (xsl-mode . all) (bibtex-mode . all) (prog-mode . all) (comint-mode . all) (text-mode . some))
Value of lowest speech rate.
Default Value:
50
Speech rate step used by ‘tts-set-predefined-rate’.
Default Value:
8
Replacements for characters.
Default Value:
((150 . "-") (9473 . "-") (9475 . "|") (176 . " degrees ") (8451 . "Degree C") (8457 . "Degree F ") (8220 . "\"") (8221 . "\"") (8902 . "*") (173 . "-") (8216 . "`") (8217 . "'") (8208 . " dash ") (8211 . " dash dash ") (8212 . " em dash ") (8202 . " ") (65279 . " ") (8204 . "") (8203 . " ") (8201 . " ") (8213 . "----") (8214 . "||") (8230 . "...") (8226 . " bullet ") (149 . " ... ") (8482 . "TM") (64256 . "ff") (64257 . "fi") (64258 . "fl") (64259 . "ffi") (64260 . "Ffl"))
Alist of character name transformation rules.
Default Value:
(("BOX DRAWING" lambda (_ignored) ".")
("^Mathematical Sans-Serif\\( small\\| capital\\)? letter \\(.*\\)$" lambda
(s)
(match-string 2 s))
("^greek\\( small\\| capital\\)? letter \\(.*\\)$" lambda
(s)
(match-string 2 s))
("^latin\\( small\\| capital\\)? letter \\(.*\\)$" lambda
(s)
(match-string 2 s))
("^DEVANAGARI \\(sign\\|vowel sign\\|letter\\)? \\(.*\\)$" lambda
(s)
(match-string 2 s)))
Characters of these charsets are ignored by tts-unicode-replace-chars.
Default Value:
(ascii latin-iso8859-1)