每次都与SASS非法嵌套

时间:2013-10-04 07:59:54

标签: ruby-on-rails compiler-errors sass nested nanoc

我正在尝试创建自己的网站,而我正在使用Nanoc。我也在HAML和SASS中编写我的文件。
当我写入SASS文件时,我总是有错误

Haml::SyntaxError: Illegal nesting: nesting within plain text is illegal 

编译时(nanoc compile)。
我的sass文件位于/content/css,我希望他们进入/output/css

我不明白的是,如果我放置空格或者我放了一个标签,它就不会编译。唯一有效的是我没有放任何空格或标签。它编译但输出中的CSS不起作用。
我之前看过这里:https://groups.google.com/forum/#!topic/nanoc/UI4VccZCDD4但它并没有纠正我的编译错误。

我将style.sass文件和我的Rules文件放在下面。

导致此问题的原因是什么?如何解决?

div.title
  width: 80%
  background-color: #b7b8b2

如果我在widthbackground之前没有留空格,那么它会编译但不起作用。

#!/usr/bin/env ruby

require 'compass'
Compass.add_project_configuration 'config.rb'   # when using Compass 0.10

### Compile rules
compile '/content/css/*' do
    filter :sass, Compass.sass_engine_options # add the second parameter for Compass
end

compile '*' do
  if item.binary?
    # don’t filter binary items
  else
    filter :haml
    layout 'default'
  end
end

### Route rules
route '/content/css/*' do
  #'/style.css'
  # item.identifier.chop + '.css' #so that the /content/stylesheet.sass item is compiled in sass
  unless item.identifier.start_with?('/content/css/_') # for partials
      item.identifier.gsub(/\/$/, '') + '.css'
  end
end

route '*' do
  if item.binary?
    # Write item with identifier /foo/ to /foo.ext
    item.identifier.chop + '.' + item[:extension]
  else
    # Write item with identifier /foo/ to /foo/index.html
    item.identifier + 'index.html'
  end
end

### Layout rules
layout '*', :haml

1 个答案:

答案 0 :(得分:0)

CSS编译规则有错误。它应该说

compile '/css/*'

而不是

compile '/content/css/*'

项目标识符不以/content开头。