1

我需要我的 Mac 在演示时说出当前幻灯片的编号。我已经编写了以下脚本,但它没有按预期工作。

on slideNumber()
    tell application "Keynote"
        return the slide number of the current slide of the front document
    end tell
end slideNumber

repeat
    say slideNumber()
    delay 1
end repeat

当我运行它时,它将正确说出 Keynote 中的当前幻灯片编号,但是如果我转到 Keynote 并更改幻灯片或开始演示幻灯片,Applescript 不会更新幻灯片编号。如果我回到 Applescript 窗口,它会立即开始说出正确的幻灯片编号。

我也尝试过使用:

on idle
    say slideNumber()
    return 1
end idle

并导出为保持打开的应用程序,但会出现同样的问题。

如果应用程序/脚本不在前台,是否不可能让 Applescript 应用程序返回正确的幻灯片编号?如果相关,我正在使用 Keynote 6.2。

4

1 回答 1

0

我意识到这个问题很老了。对于它的价值,刚刚看到它,你的脚本对我来说非常好。我在 macOS Sierra (10.12.1) 上使用 Keynote 版本 7.0.5。将您的脚本复制/粘贴到脚本编辑器中并运行它。当我在编辑模式和演示时在幻灯片之间切换时,说出正确的幻灯片编号。

Keynote 6.2 的脚本界面是否有问题?我见过一些有缺陷的应用程序没有做它所宣传的事情,而后来的版本修复了它。您仍然特别需要它来针对 Keynote 6.2 运行吗?

于 2016-12-08T03:47:42.797 回答