Applescript差异从10.6到10.7

时间:2011-11-10 14:41:13

标签: applescript spell-checking

首先,我是apple和mac os的初学者。

我为10.6编写了一个脚本,以便在我的Java程序中使用拼写检查器:

 tell application "Automator Runner"
    set mySpellChecker to call method "sharedSpellChecker" of class "NSSpellChecker"
    set foundLanguages to call method "availableLanguages" of mySpellChecker
 end tell

在10.6下工作得很好

但即使在Applecript控制台下,现在在10.7.2下也会出现错误:

tell application "Automator Runner"
   set mySpellChecker to call **method** "sharedSpellChecker" of class "NSSpellChecker"
   set foundWords to call method "availableLanguages" of mySpellChecker
end tell
  

**预期的行尾但找到了标识符。

任何人都可以给我一个提示,从10.6改为10.7。在更改日志中,我无法找到AppleScript更改或使用拼写检查程序API进行更改。使用“调用方法...”的Web上的其他脚本也会失败并出现相同的错误。

1 个答案:

答案 0 :(得分:1)

是的,似乎“call method”命令在10.7中不再起作用。苹果一直在以10.6的速度淘汰这一局面,最终在10.7完全取消了它。他们用AppleScriptObjC语言替换了这种访问objective-c方法的方法。因此他们在10.7中添加了AppleScript。您现在可以直接在AppleScript编辑器中编写AppleScriptObjC代码。在10.6以下,你只能通过Xcode使用它。所以我们失去了一些东西但我们也获得了一些东我们可以讨论哪种方式更好,但Apple认为AppleScriptObjC是前进之路。