【发布时间】:2013-04-13 22:53:25
【问题描述】:
我在一个效果很好的项目中使用了 Compass Sprite 助手。然而,精灵的生成给项目编译时间增加了几秒钟,而且大多数时候我不需要重新生成它。
有没有办法关闭精灵生成并让指南针使用最后生成的文件?
我正在使用 CodeKit,我很容易被命令行 / Ruby 的大量讨论搞糊涂!
【问题讨论】:
标签: sass compass-sass sprite
我在一个效果很好的项目中使用了 Compass Sprite 助手。然而,精灵的生成给项目编译时间增加了几秒钟,而且大多数时候我不需要重新生成它。
有没有办法关闭精灵生成并让指南针使用最后生成的文件?
我正在使用 CodeKit,我很容易被命令行 / Ruby 的大量讨论搞糊涂!
【问题讨论】:
标签: sass compass-sass sprite
我刚刚尝试过,除非我修改 sprites 文件夹的内容,否则 Compass 不会重新编译我的 sprite:
$ compass compile
unchanged images/sexy-sce786a2ec5.png
overwrite stylesheets/screen.css
尝试使用compass 命令行工具而不是 CodeKit 编译您的项目。如果成功,请检查 CodeKit 是否使用 Compass 编译您的项目,而不是 vanilla SASS。
【讨论】:
看起来像是正在修复的 CodeKit 问题: https://github.com/bdkjones/CodeKit/issues/297
在那之前,我正在使用详细的解决方法here。
【讨论】:
看起来compass compile 没有其他参数(根据 Andrey 'lolmaus 的回答)不会导致这种情况,但如果有任何参数,它会将 :force 选项设置为是的,其后果之一是精灵被强制重新创建。
这似乎是疯狂的行为?
目前我已经编辑了lib/compass/commands/update_project.rb(具体来说,在我的例子中是~/.rvm/gems/ruby-1.9.3-p429/gems/compass-0.12.4/lib/compass/commands/update_project.rb),并在该文件末尾的parse_arguments! 函数中注释掉了parser.options[:force] = true 行。
(注意unless arguments.empty? 条件)
这似乎完全禁用了精灵生成(即即使您需要它),但我可以使用 compass compile --force ... 手动启用它
这对我来说当然已经足够了。
【讨论】: