-- love2talk — vendored from d:\code\love2talk -- See VENDORED.md for the list of local modifications. local os = love.system.getOS() local backend -- upstream leaked this as a global; scoped to the module here if os == "Windows" then backend = require "accessibility.vendor.love2talk.tolk" backend.trySAPI(true) elseif os == "OS X" then backend = require "accessibility.vendor.love2talk.macspeech" end local function say(text, interrupt) if not backend then return end interrupt = interrupt or false if os == "Windows" then backend.output(text, interrupt) else backend.output(text) end end local function isSpeaking() if not backend then return false end return backend.isSpeaking() end local function silence() if not backend or not backend.silence then return end backend.silence() end -- LOCAL ADDITION: exposed for diagnostics. Tells us whether Tolk actually found a -- speech channel (a running screen reader, or the SAPI fallback) as opposed to -- merely having loaded the DLL successfully. local function hasSpeech() if not backend or not backend.hasSpeech then return false end return backend.hasSpeech() end return {say = say, isSpeaking = isSpeaking, silence = silence, hasSpeech = hasSpeech}