Skip to content

robertmeta/swiftmac

Repository files navigation

swiftmac

Confirguration Example

; stops doubletalk (when supported)
(setopt mac-ignore-accessibility 't)
(setopt dtk-program "swiftmac")
; these are between 0 and 1
(setenv "SWIFTMAC_TONE_VOLUME" "0.1")
(setenv "SWIFTMAC_SOUND_VOLUME" "0.1")
(setenv "SWIFTMAC_VOICE_VOLUME" "1.0")
(push "swiftmac" tts-multi-engines)
(setopt tts-notification-device "right")
(require 'emacspeak-setup)
; Heree you can just do "en-US" or just ":Alex"
(dtk-set-language "en-US:Alex")
; 0.7 is 70% in VoiceOver terms
(dtk-set-rate 0.7 t)

Introduction

This is an emacspeak server written in swift intended to be as async as reasonable, fast and responsive.

Unless you are a developer or interested in becoming one, you probably want to use the version bundled with emacspeak, I keep that copy up to date with this one fairly consistently.

Hacking

The recommended workflow is to symlink the swiftmac binary under either .build/release/swiftmac or ./build/debug/swiftmac (depending which you are building) to your emacspeak servers directory.

then just

make

for debug or

make release

to build a fresh binary.

I will likely remove make install in the future, as it is a bit fidgety, but I will leave it in for now.

Having Trouble?

It emits warnings and notes

I am aware of the current warnings, it is a goal to get it to build completely clean but tthat is not a priority right now, getting to v2 is the priority.

Double-Speaking

If you are hearing stuff twice, ensure that mac-ignore-accessibility is set and your emacs version supports it. If that doesn’t work, you can use the VoiceOver Utility that comes with MacOS to create an activity for Emacs.app to turn off voiceover while in the Emacs window. This only works if you are using a windowed version of Emacs (not terminal version).