将开关传递给Xcode 3.1用户脚本

时间:2008-09-06 14:11:38

标签: xcode scripting arguments xcode3.1

我有一个用户脚本,如果它可以根据用户的需要动态地改变一些执行,那将会更有用。通过简单的开关很容易解决这个问题,但我认为没有办法做到这一点。

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

所以有人知道用某种参数调用用户脚本的方法吗? (其他正常的%%%var%%%变量)


编辑:

用户脚本可通过Xcode菜单栏中的脚本菜单访问(在Window和Help菜单之间)。我的问题不是关于“运行脚本”构建阶段脚本。我很抱歉让这有些模棱两可。

4 个答案:

答案 0 :(得分:1)

您无法将参数传递给用户脚本 - 相反,用户脚本会根据您正在使用的上下文(例如,所选文件,所选文本等)进行操作。

您应该使用上下文来确定用户真正想要的内容。

答案 1 :(得分:0)

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

答案 2 :(得分:0)

我想你可以这样做:

#!/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

答案 3 :(得分:0)

内置的实用程序脚本允许您提示用户并捕获回复。

例如,您可以提示输入一个字符串,然后根据该字符串执行某项任务。

String提示符为:

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

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

User Scripts Documenation