错误-1752“脚本似乎不属于AppleScript”实际上是什么意思?

错误-1752“脚本似乎不属于AppleScript”实际上是什么意思?,applescript,automator,Applescript,Automator,我正在尝试编写几个共享公共函数的AppleScript脚本。理想情况下,他们会这样做 由于这将在存储库中,而不是锁定到特定的机器上,因此我不能依赖脚本库目录来完成这项工作。我正在努力 但这一切似乎都不起作用。起初,我认为问题与此有关,但在做了一个测试后,我从一个不包含空格的目录中包含了内容,很明显osascript正在查找文件,只是拒绝打开它 错误脚本似乎不属于AppleScript。编号-1752 from/path/to/common.applescript 这到底意味着什么?我该如何修复它

我正在尝试编写几个共享公共函数的AppleScript脚本。理想情况下,他们会这样做

由于这将在存储库中,而不是锁定到特定的机器上,因此我不能依赖脚本库目录来完成这项工作。我正在努力

但这一切似乎都不起作用。起初,我认为问题与此有关,但在做了一个测试后,我从一个不包含空格的目录中包含了内容,很明显osascript正在查找文件,只是拒绝打开它

错误脚本似乎不属于AppleScript。编号-1752 from/path/to/common.applescript


这到底意味着什么?我该如何修复它?

AppleScript的内置库加载器10.9+和加载脚本命令所有操作系统版本都需要编译的.scpt/.scptd AppleScript文件[1]。OSA对源代码文件格式(如applescript)一无所知,并且本身不具备读写能力;只有脚本编辑器、OSAComile、OSAComile等外部工具才知道如何实现这一点

您可以将编译后的文件存储在repo[2]中,也可以编写一个部署脚本,在将未编译的.applescript文件复制到脚本库文件夹或部署它们的任何位置时,通过OSAComile运行这些文件

-

[1] 是的,这很烦人,但OSA早于现代SCM系统,它的文件系统交互更多地是基于样式持久化建模的,而不是Unix的让我们假设一切都是ASCII文本文件方法

[2]
虽然您将失去区分它们的能力,但除非您想使用SCM的diff挂钩使其运行。scpt[d]通过OSA反编译文件来创建临时的.applescript文件,然后这些文件可以与普通文件不同。

applescript的内置库加载器10.9+和load script命令所有操作系统版本都需要编译的.scpt/.scptd applescript文件[1]。OSA对源代码文件格式(如applescript)一无所知,并且本身不具备读写能力;只有脚本编辑器、OSAComile、OSAComile等外部工具才知道如何实现这一点

您可以将编译后的文件存储在repo[2]中,也可以编写一个部署脚本,在将未编译的.applescript文件复制到脚本库文件夹或部署它们的任何位置时,通过OSAComile运行这些文件

-

[1] 是的,这很烦人,但OSA早于现代SCM系统,它的文件系统交互更多地是基于样式持久化建模的,而不是Unix的让我们假设一切都是ASCII文本文件方法

[2]
虽然您将失去区分它们的能力,但除非您想使用SCM的区分挂钩,使其通过OSA反编译运行.scpt[d]文件来创建临时的.applescript文件,然后这些文件可以与正常文件不同。

您的applescript是以文本格式而不是编译脚本格式存储的吗?它是以文本格式存储的,因为它是存储库的一部分。@Zero这对我帮助不大。通过谷歌搜索该错误,我会发现。你的AppleScript是以文本格式而不是编译脚本格式存储的吗?它是以文本格式存储的,因为它是存储库的一部分。@Zero这对我帮助不大。谷歌搜索这个错误给了我一个答案。我在Post24上发布了一个diffscript,它适用于scpt和可能的scptd文件,只要它是我们正在讨论的scptd文件的主脚本。不太使用scptd。我在Post24上发布了一个diffscript,它适用于scpt和可能的scptd文件,只要它是我们正在讨论的scptd文件的主脚本。不怎么使用scptd。