我是Compass
的新手(也是Ruby
),我想知道Compass
配置文件的命名约定。
默认情况下,Compass
在执行config.rb
命令的目录中创建名为compass create
的文件。当我正在开发一个Grails
网络应用时,我尝试在C:\Source\MyGrailsProject\web-app\config
内初始化它,因为我希望将所有配置文件放在一个目录中,以便我可以从创建的WAR
中删除它轻松归档。
现在,我读到配置文件的名称也可以像config/compass.rb
[1],我尝试了以下内容:
使用Compass
目录下的所有特定设置创建config
配置文件
从命令行运行compass create C:\Source\MyGrailsProject\web-app --bare
(--bare
用于创建默认目录结构Compass
,因为这是一个已设置的项目[2])< / p>
从config.rb
文件夹中删除已创建的web-app
文件,因为我之前在config/compass.rb
运行compass compile C:\Source\MyGrailsProject\web-app
或者compass compile C:\Source\MyGrailsProject\web-app\config
- 它们都会显示“Nothing to compile ...”日志,如果Compass
未设置,则会显示该日志所有!
我在这里做错了什么?不应该这样吗?
[1] https://github.com/chriseppstein/compass/issues/751
[2] https://groups.google.com/d/msg/compass-users/w1wZd4bKbGo/vNlYJTgCm4kJ
答案 0 :(得分:0)
config
文件中声明了错误的目录路径。这个问题对我来说并不明显,因为我认为,我必须声明相对于配置文件的目录路径 - 相反,必须声明相对于罗盘项目路径的目录路径......
所以,假设我Compass Project Path
位于/path/to/my/project
,我的配置文件位于/path/to/my/project/config/compass.rb
下方。所有其他文件也在其他子目录中,如下所示:
/path/to/my/project
/path/to/my/project/config/compass.rb
/path/to/my/project/css/style.css
/path/to/my/project/js/app.js
/path/to/my/project/scss/style.scss
compass.rb
中声明的目录必须相对于Compass Project Path
,如下所示:
css_dir = "css"
sass_dir = "scss
...
以防万一其他人也会遇到这个问题;)