我有一个用户脚本,如果它可以根据用户的需求动态更改其某些执行,那么它会更有用。通过简单的开关可以很容易地解决这个问题,但我没有看到任何方法可以做到这一点。

我还尝试在脚本名称中嵌入关键字,但是 Xcode 在执行之前将脚本复制到看起来像 guid 的文件名,因此这也不起作用。

那么有人知道如何使用某种参数调用用户脚本吗?(除了正常的 %%%var%%% 变量)


编辑:

用户脚本可以通过 Xcode 菜单栏中的脚本菜单(在“窗口”和“帮助”菜单之间)访问。我的问题不是关于“运行脚本”构建阶段脚本。我很抱歉让这句话有些含糊不清。

有帮助吗?

解决方案

您无法将参数传递给用户脚本 - 相反,用户脚本在您正在工作的上下文中运行(例如所选文件、所选文本等)。

您应该使用上下文来确定用户真正想要什么。

其他提示

用户脚本可以通过 Xcode 菜单栏中的脚本菜单(在“窗口”和“帮助”菜单之间)访问。不知道还能怎么称呼他们。我要问的不是“运行脚本”构建阶段脚本。

我想你可以做这样的事情:

#!/bin/bash
result=$( osascript << END
tell app "System Events"
  set a to display dialog "What shall be the result?" default answer ""
end tell
return text returned of a
END
)
# do stuff with $result

有内置的实用程序脚本可让您提示用户并捕获回复。

例如,您可以提示输入字符串,然后根据该字符串执行特定任务。

字符串提示是:

STRING = `%%%{PBXUtilityScriptsPath}%%%/AskUserForStringDialog "DefaultString" "DefaultWindowName"`

如果您注意到,您只是调用他们使用静态路径编写的 applescript。如果需要,您可以编写自己的 applescript 对话框并将其放置在那里,并绕过繁琐的 osascript 语法。还有其他的(用于文件、文件夹、应用程序等)

用户脚本文档

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top