AppleScripts:显示通知太快,无法正确显示

AppleScripts:显示通知太快,无法正确显示,applescript,Applescript,我不记得最近是否改变了(我在10.13上),但是当我在一个快速循环中调用display notification时,通知更改为“N个新通知”。对我的大部分剧本来说都毫无帮助 我试过偶尔打电话通知你 if notificationCount / someDenom = (notificationCount / someDenom) as integer then display notification "etc." 如果一个循环需要多长时间是一个已知的量,那么它就可以工作。但有一半的时间,我有

我不记得最近是否改变了(我在10.13上),但是当我在一个快速循环中调用display notification时,通知更改为“N个新通知”。对我的大部分剧本来说都毫无帮助

我试过偶尔打电话通知你

if notificationCount / someDenom = (notificationCount / someDenom) as integer then display notification "etc."
如果一个循环需要多长时间是一个已知的量,那么它就可以工作。但有一半的时间,我有时在本地驱动器上调用脚本,有时在网络上调用脚本,结果是不可预测的。要么我没有得到足够频繁的通知,要么它有时会崩溃成太多的显示

我认为这完全有可能是在macOS中烘焙出来的,除了上面提到的,我什么也做不了,但我觉得有人可能有个好主意

[编辑添加:我自己也有一个,一个记录日期戳和自上次调用以来经过的时间的子例程,然后仅在N秒后调用通知。我将尝试一下。]


[再次编辑:从技术上讲,这是可行的,但每次通知都会增加0.68秒,这在一个严格的循环中是一个相当高的成本。]

不确定这是否是您要寻找的,但它适用于脚本:

delay 1
display notification "uno momento..."
delay 1
display notification "it works!"
也就是说,找出一种方法,在通知之间添加延迟,如果它们没有出现/播放延迟时间,直到它符合您的目的为止。我发现使用1秒是可以的,因为用户将以这种速度阅读,它允许操作系统的时间赶上,并确保所有通知都按顺序列出,并且所有通知都向用户显示


我发现,如果在组中发送通知,我还必须在第一次通知之前加入延迟…再次确保第一次通知正确显示。

您使用通知的目的是什么?进度监视器?在这种情况下,可以使用AppleScript
progress
接口。他们并不伟大,但他们可以完成任务。如果您使用它,当您的脚本运行时,您可以单击菜单栏中的旋转装置来查看“进度描述”等等。这对我来说是新的,是的,它在很多地方都很有用。但对于从“脚本”菜单启动的脚本来说,这是次优的,我的很多脚本都在这里。嗨@bbiasi-问题:你和你有什么不同?你为什么要改变我的英语?“你是”是正确的-只是好奇而已。:)没有一个我不完全记得了,但我认为是1个字符编辑了你的代码,把它和围栏放在一起。很抱歉,我的目的只是为了改进代码的美观。好的,谢谢你-我还没有给stackoverflow添加任何注释,所以出于某种奇怪的原因,我认为我们不能使用撇号。哈哈,谢谢你给我看代码片段/现在我明白了。