小编foo*_*foo的帖子

AppleScript现在可以用JavaScript取代吗?

我有一本关于AppleScript的书,我想知道我是否应该保留.我已经了解JavaScript.

据我所知,Apple最近在OS X中添加了JavaScript脚本支持.

这是否意味着我不再需要学习AppleScript来为OS X应用程序编写脚本,还是比它更多呢?你的想法将不胜感激.

上述问题是从想要让应用程序自动执行操作的应用程序用户的角度出发的.

关于应用程序开发人员(Cocoa)的事情怎么样?如果他们想让他们的应用程序可编写脚本,他们可以不学习AppleScript吗?

更新:添加了赏金.问题被重新定义(对AppleScript及其用户没有任何不尊重):鉴于我已经了解JavaScript,我还有什么理由学习AppleScript吗?您对此事的详细想法将不胜感激.

cocoa applescript javascript-automation

15
推荐指数
2
解决办法
2009
查看次数

在 OS X JavaScript for Automation (JXA) 中附加事件侦听器

如何在 OS X JavaScript 中监听事件以实现自动化。

在消息应用程序的脚本库中有一个事件处理程序列表,例如messageSentmessageReceived。但是,我无法弄清楚如何使用它们。尝试传递函数会产生错误,而尝试将这些变量设置为新函数会导致 REPL 挂起。

设置这些事件处理程序的正确方法是什么?

javascript macos applescript automation javascript-automation

5
推荐指数
1
解决办法
1569
查看次数

在Javascript for Automation中使用"which"数组

使用脚本编辑器使用新的JS进行自动化.我在下面的最后一行收到错误:

var iTunes = Application("iTunes");
var sources = iTunes.sources();
var library = sources.whose({name : "Library"});
Run Code Online (Sandbox Code Playgroud)

确认sources数组是预期的(两个元素,一个带有name"Library"和一个"Internet Radio").但最后一行扼杀了Error on line 3: TypeError: undefined is not a function (evaluating 'sources.whose({name : "Library"})').

据我所知,我正在使用正确的whose函数语法.(我也尝试使用明确的_equals条款来得到相同的结果.)我做错了什么?

applescript osx-yosemite javascript-automation

5
推荐指数
2
解决办法
1878
查看次数

使用 JavaScript 调用 Shell 脚本以实现自动化

使用 AppleScript,我可以使用以下命令调用 shell 脚本:

do shell script "echo 'Foo & Bar'"
Run Code Online (Sandbox Code Playgroud)

但是我在 Yosemite Script Editor 中找不到使用 JavaScript 的方法。

javascript applescript javascript-automation

5
推荐指数
1
解决办法
2184
查看次数

如何从cocoa app运行JavaScript/AppleScript?

我正在尝试使用NSAppleScript从Objective-C执行一些AppleScript ...但是,我正在尝试的代码是Yosemite中用于自动化的新JavaScript.它在运行时似乎没有做任何事情,但是,正常的AppleScript工作正常.

[NSApp activateIgnoringOtherApps:YES];
NSAppleScript *scriptObject = [[NSAppleScript alloc] initWithSource:
                               @"\n\
                                    iCal = Application(\"Calendar\");\n\
                                    iCal.includeStandardAdditions = true;\n\
                                    iCal.activate();\n\
                                    iCal.displayAlert(\"testing\");\n\
                               "];

[scriptObject executeAndReturnError: nil];
Run Code Online (Sandbox Code Playgroud)

我怎么能让它运行?

谢谢

javascript cocoa applescript objective-c javascript-automation

4
推荐指数
1
解决办法
839
查看次数

2
推荐指数
1
解决办法
1352
查看次数