使用--sourcemap标志运行Compass

时间:2013-04-19 08:41:52

标签: css sass compass-sass

Compass是否支持Sass中的--sourcemap选项?我想通过Compass运行Sass。我有

sass_options = {:sourcemap => true}

在我的config.rb中,但是当我在项目文件夹中运行compass watch时,没有生成源图文件。另一方面,当我运行

sass --compass --sourcemap --watch scss:css

生成源文件,但忽略config.rb。

(对于任何想知道源图是什么的人来说,这是一个允许开发人员工具检查员在检查元素时指向Sass scss文件中样式的来源的文件。)

3 个答案:

答案 0 :(得分:13)

@cimmanon提供的解决方案对我不起作用。对我有用的是以下内容(https://github.com/Compass/compass/issues/1108中对Serge-Z的评价):

sudo gem install compass-sourcemaps --pre

然后你就像往常一样在{。1}}中compass watch {/ 1}}。

如果您使用的是OS X El Capitan并且由于无根模式而导致安装问题(https://github.com/Compass/compass/issues/2018中的Thomzzzzz信用):

sass_options = {:sourcemap => true}

答案 1 :(得分:11)

从Sass 3.3或更高版本开始包含源地图,该地图仅与Compass 1.0兼容。

https://github.com/chriseppstein/compass/issues/1108

将以下内容添加到config.rb只会将源映射信息直接添加到已编译的CSS中:

sass_options = { :debug_info => true }

输出:

@media -sass-debug-info{filename{font-family:file\:\/\/\/home\/chris\/compass\/sass\/test\.scss}line{font-family:\0000314}}
.foo {
  color: red;
}

要获取源图文件,需要将此选项添加到config.rb中:

sourcemap = true

控制台输出:

$ compass watch
 modified config.rb
    clean css
   delete css/test.css
>>> Compass is watching for changes. Press Ctrl-C to Stop.
    write css/test.css
    write css/test.css.map

答案 2 :(得分:2)

对我而言,它适用于

sourcemap = true

在config.rb中(解决方案取自https://chillco.com/blog/setting-sass-and-compass-source-maps

我通过考拉(http://koala-app.com/

使用指南针