2012-07-28 201 views
4

我想制作一个AppleScript来自动完成在MacBook Pro Retina上切换分辨率的任务。Applescript API文档

在互联网上搜索“applescript系统偏好”我遇到了a page,其中显示了一些偏好。作为新的缩放分辨率的东西,它没有记录。

这给AppleScript带来了一个更大的问题(请注意,除了复制粘贴某些我从未真正编写过的内容外)。例如,文档告诉我,系统首选项对象实际上被称为“系统首选项”,它具有名为“窗格”的对象,它们有一个ID并且公开ID为“com.apple.preference 。暴露”?

似乎每个程序都必须有某种“秘密”文档,它们必须很大,映射所有对象层次结构和可能的操作。最后,AppleScript核心是最小的,你所做的就是操纵这些程序。但他们在哪里记录?

回答

5

确定这是如何工作的:

在哪里,告诉我,例如,塔系统偏好设置对象的文件实际上是所谓的“系统偏好设置”

的对象称作“系统首选项”,因为这是应用程序的确切名称。什么你告诉AppleScript的使用,这是我想给应用说话命名系统预置tell application "System Preferences" ...

,它已对象名为“窗格”

现在是最有趣的部分。如果你打开你的库窗口(在Applescript编辑器中,Window> Library),你会看到有一个可用的脚本应用程序集合,事情是'系统首选项'不存在。所以让我们来找到它:File> Open Dictionary> System Preferences。现在你有一个窗口,可以让你深入了解应用程序的所有可用的类/命令/属性,还有一个包含相关文档的拆分窗口(如果你点击SSystem Preferences你会看到Cpane并点击你会看到Pid等)。窗格的id再一次是窗格的名称(小写和连接 - 我仍在查看文档以获得严格的定义)。我希望这会让你开始。


小号:套房 Ç:类 P:房产 (一圆圈内的 'C' 代表 Command

3

你完全正确。每个程序都有自己的applescript文档。它被称为它的applescript字典。您可以通过以下任何一种方式查看任何应用程序的字典...

1)在AppleScript编辑器的文件菜单下,选择“打开字典...”。你可以从那里选择一个应用程序,它会显示它的字典。

2)将应用程序拖放到AppleScript编辑器的图标上。

3)有一个快速访问的常用词典列表。在AppleScript编辑器的窗口菜单下选择“库”。您可以双击该列表中的应用程序。您还可以修改该列表以包含您想要在列表中的字典。

祝你好运。

0

你可以问的AppleScript告诉你为每个的ID窗格。

tell application "System Preferences" to get the id of every pane 

这特别方便,因为它会告诉您已安装的任何第三方偏好窗格的ID。例如,我能够确定我的Microsoft Natural键盘的窗格被称为com.microsoft.microsoftkeyboard

我还没有真正探索过这么多,但我期望类似的语法存在以识别任何脚本化应用程序中的对象。