say 命令失效

问题截图

这是我的 mac 升级到 Catalina 正式版之后突然出现的问题,say 命令反馈错误信息

Open speech channel failed: -76

google 得知,这个错误出现率不高,也或许是使用say命令的人比较少,大致了解到该问题可能来自于系统更新,并不仅仅是 Catalina (10.15) 中的问题。

通过使用 say 'string you want output' -v Alex 暂时解决问题,但并没有从根本上解决。

然后没招了,多方查看 say 相关进程信息,ps ax |grep speechsynthesisd,意外发现重置相关进程可以解决。

2589   ??  Ss     0:01.87 /System/Library/Frameworks/ApplicationServices.framework/Frameworks/SpeechSynthesis.framework/Resources/com.apple.speech.speechsynthesisd
7235   ??  S      0:02.06 /System/Library/Frameworks/ApplicationServices.framework/Frameworks/SpeechSynthesis.framework/Resources/com.apple.speech.speechsynthesisd

重置命令

sudo pkill speechsynthesisd say

然后大功告成,完美解决。

Alfred 部分权限失效

一直都很喜欢 Alfred 提供的 selection in macOS 只需要简单设置就能双击 shift ,就能把目前选中的文字输入到 Alfred 的搜索框中,默认 google 搜索,可以说非常方便了。

但是在升级 Calalina 之后由于系统隔离并且加强了权限管理,导致这一功能需要重置 Alfred 的权限,原本上版本系统中获取的权限已经失效了。

在终端中输入以下命令,并且重新打开

tccutil reset All com.runningwithcrayons.Alfred

然后重新打开 Alfred ,会提示获取权限,或者从 Alfred 的 General 中点击 Request Permissions.

Enjoy it.