我正在使用PhoneGap构建一个基于HTML5的应用程序,想要使用Haml、Sass和CoffeeScript。请问是否有一种方法可以在Xcode 4.2的构建过程中集成这些文件并将其编译为HTML、CSS和JavaScript?由于我对Xcode仍不熟悉,仍在努力理解这些复杂的构建设置。感谢您的帮助。
是的,你所描述的是构建阶段的一部分(参考文档这里)。
在选择项目中的目标后,您可以添加一个“运行脚本”目标,在构建时编译所有自定义内容类型。由于您可以指定“shell”(实际上是任何解释器),因此您可以使用(几乎)任何语言编写它。
一些提示:
有一个叫做 $PROJECT_DIR
的环境变量,其中包含了你的 XCode 项目的绝对路径。你需要使用它(例如,$PROJECT_DIR/www
指向你的 www
文件夹)。
把你的运行脚本尽可能早地放在构建阶段中,因为其他阶段可能依赖于生成的内容。
我强烈建议把你的“运行脚本”构建阶段作为你的 VC 中的可执行文件,并且只使用粘贴脚本将脚本加载到你的 VC 中。
rsync 是最好(也是最快)的镜像另一个目录的方法,而不需要了解其内容的详细信息。特别有用的是它的 --delete
标志,用于修剪已删除的文件。如果你可以运行 XCode 4.2,它已经存在于你的系统中。
最后,一个外部监视器脚本(例如 guard、coffee --watch
、compass --watch
),输出它们的结果可能和一个运行脚本构建阶段一样有效。
最近我写了一篇博客文章,我的建议是使用sprockets和一个rack服务器。Sprockets是管理资产的最佳方式,而rack服务器通过您的桌面浏览器促进快速开发。