sass 3.1.5 → 3.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/VERSION +1 -1
- data/lib/sass/cache_stores/base.rb +4 -9
- data/lib/sass/engine.rb +2 -1
- data/lib/sass/environment.rb +11 -0
- data/lib/sass/script/funcall.rb +8 -0
- data/lib/sass/script/interpolation.rb +9 -0
- data/lib/sass/script/list.rb +7 -0
- data/lib/sass/script/literal.rb +5 -0
- data/lib/sass/script/node.rb +8 -0
- data/lib/sass/script/operation.rb +8 -0
- data/lib/sass/script/string_interpolation.rb +9 -0
- data/lib/sass/script/unary_operation.rb +7 -0
- data/lib/sass/script/variable.rb +5 -0
- data/lib/sass/tree/debug_node.rb +1 -6
- data/lib/sass/tree/each_node.rb +1 -7
- data/lib/sass/tree/extend_node.rb +1 -1
- data/lib/sass/tree/for_node.rb +2 -7
- data/lib/sass/tree/function_node.rb +0 -5
- data/lib/sass/tree/if_node.rb +1 -19
- data/lib/sass/tree/mixin_def_node.rb +1 -6
- data/lib/sass/tree/mixin_node.rb +2 -7
- data/lib/sass/tree/node.rb +2 -18
- data/lib/sass/tree/prop_node.rb +0 -5
- data/lib/sass/tree/return_node.rb +1 -6
- data/lib/sass/tree/rule_node.rb +7 -5
- data/lib/sass/tree/variable_node.rb +1 -7
- data/lib/sass/tree/visitors/deep_copy.rb +87 -0
- data/lib/sass/tree/visitors/perform.rb +8 -7
- data/lib/sass/tree/visitors/set_options.rb +97 -0
- data/lib/sass/tree/visitors/to_css.rb +5 -1
- data/lib/sass/tree/warn_node.rb +1 -7
- data/lib/sass/tree/while_node.rb +1 -7
- data/test/sass/cache_test.rb +15 -0
- data/test/sass/engine_test.rb +25 -8
- data/test/sass/scss/scss_test.rb +8 -0
- metadata +201 -199
@@ -10,7 +10,7 @@ module Sass
|
|
10
10
|
|
11
11
|
# The parse tree for the variable value.
|
12
12
|
# @return [Script::Node]
|
13
|
-
|
13
|
+
attr_accessor :expr
|
14
14
|
|
15
15
|
# Whether this is a guarded variable assignment (`!default`).
|
16
16
|
# @return [Boolean]
|
@@ -25,12 +25,6 @@ module Sass
|
|
25
25
|
@guarded = guarded
|
26
26
|
super()
|
27
27
|
end
|
28
|
-
|
29
|
-
# Returns sub nodes that are not tree children.
|
30
|
-
def subnodes
|
31
|
-
Array(expr)
|
32
|
-
end
|
33
|
-
|
34
28
|
end
|
35
29
|
end
|
36
30
|
end
|
@@ -0,0 +1,87 @@
|
|
1
|
+
# A visitor for copying the full structure of a Sass tree.
|
2
|
+
class Sass::Tree::Visitors::DeepCopy < Sass::Tree::Visitors::Base
|
3
|
+
protected
|
4
|
+
|
5
|
+
def visit(node)
|
6
|
+
super(node.dup)
|
7
|
+
end
|
8
|
+
|
9
|
+
def visit_children(parent)
|
10
|
+
parent.children = parent.children.map {|c| visit(c)}
|
11
|
+
parent
|
12
|
+
end
|
13
|
+
|
14
|
+
def visit_debug(node)
|
15
|
+
node.expr = node.expr.deep_copy
|
16
|
+
yield
|
17
|
+
end
|
18
|
+
|
19
|
+
def visit_each(node)
|
20
|
+
node.list = node.list.deep_copy
|
21
|
+
yield
|
22
|
+
end
|
23
|
+
|
24
|
+
def visit_extend(node)
|
25
|
+
node.selector = node.selector.map {|c| c.is_a?(Sass::Script::Node) ? c.deep_copy : c}
|
26
|
+
yield
|
27
|
+
end
|
28
|
+
|
29
|
+
def visit_for(node)
|
30
|
+
node.from = node.from.deep_copy
|
31
|
+
node.to = node.to.deep_copy
|
32
|
+
yield
|
33
|
+
end
|
34
|
+
|
35
|
+
def visit_function(node)
|
36
|
+
node.args = node.args.map {|k, v| [k.deep_copy, v && v.deep_copy]}
|
37
|
+
yield
|
38
|
+
end
|
39
|
+
|
40
|
+
def visit_if(node)
|
41
|
+
node.expr = node.expr.deep_copy if node.expr
|
42
|
+
node.else = visit(node.else) if node.else
|
43
|
+
yield
|
44
|
+
end
|
45
|
+
|
46
|
+
def visit_mixin_def(node)
|
47
|
+
node.args = node.args.map {|k, v| [k.deep_copy, v && v.deep_copy]}
|
48
|
+
yield
|
49
|
+
end
|
50
|
+
|
51
|
+
def visit_mixin(node)
|
52
|
+
node.args = node.args.map {|a| a.deep_copy}
|
53
|
+
node.keywords = Hash[node.keywords.map {|k, v| [k, v.deep_copy]}]
|
54
|
+
yield
|
55
|
+
end
|
56
|
+
|
57
|
+
def visit_prop(node)
|
58
|
+
node.name = node.name.map {|c| c.is_a?(Sass::Script::Node) ? c.deep_copy : c}
|
59
|
+
node.value = node.value.deep_copy
|
60
|
+
yield
|
61
|
+
end
|
62
|
+
|
63
|
+
def visit_return(node)
|
64
|
+
node.expr = node.expr.deep_copy
|
65
|
+
yield
|
66
|
+
end
|
67
|
+
|
68
|
+
def visit_rule(node)
|
69
|
+
node.rule = node.rule.map {|c| c.is_a?(Sass::Script::Node) ? c.deep_copy : c}
|
70
|
+
yield
|
71
|
+
end
|
72
|
+
|
73
|
+
def visit_variable(node)
|
74
|
+
node.expr = node.expr.deep_copy
|
75
|
+
yield
|
76
|
+
end
|
77
|
+
|
78
|
+
def visit_warn(node)
|
79
|
+
node.expr = node.expr.deep_copy
|
80
|
+
yield
|
81
|
+
end
|
82
|
+
|
83
|
+
def visit_while(node)
|
84
|
+
node.expr = node.expr.deep_copy
|
85
|
+
yield
|
86
|
+
end
|
87
|
+
end
|
@@ -227,6 +227,11 @@ END
|
|
227
227
|
def visit_rule(node)
|
228
228
|
parser = Sass::SCSS::StaticParser.new(run_interp(node.rule), node.line)
|
229
229
|
node.parsed_rules ||= parser.parse_selector(node.filename)
|
230
|
+
if node.options[:trace_selectors]
|
231
|
+
@environment.push_frame(:filename => node.filename, :line => node.line)
|
232
|
+
node.stack_trace = @environment.stack_trace
|
233
|
+
@environment.pop_frame
|
234
|
+
end
|
230
235
|
yield
|
231
236
|
end
|
232
237
|
|
@@ -243,13 +248,9 @@ END
|
|
243
248
|
@environment.push_frame(:filename => node.filename, :line => node.line)
|
244
249
|
res = node.expr.perform(@environment)
|
245
250
|
res = res.value if res.is_a?(Sass::Script::String)
|
246
|
-
msg = "WARNING: #{res}\n"
|
247
|
-
@environment.
|
248
|
-
|
249
|
-
" of #{entry[:filename] || "an unknown file"}"
|
250
|
-
msg << ", in `#{entry[:mixin]}'" if entry[:mixin]
|
251
|
-
msg << "\n"
|
252
|
-
end
|
251
|
+
msg = "WARNING: #{res}\n "
|
252
|
+
msg << @environment.stack_trace.join("\n ")
|
253
|
+
msg << "\n"
|
253
254
|
Sass::Util.sass_warn msg
|
254
255
|
[]
|
255
256
|
ensure
|
@@ -0,0 +1,97 @@
|
|
1
|
+
# A visitor for setting options on the Sass tree
|
2
|
+
class Sass::Tree::Visitors::SetOptions < Sass::Tree::Visitors::Base
|
3
|
+
# @param root [Tree::Node] The root node of the tree to visit.
|
4
|
+
# @param options [{Symbol => Object}] The options has to set.
|
5
|
+
def self.visit(root, options); new(options).send(:visit, root); end
|
6
|
+
|
7
|
+
protected
|
8
|
+
|
9
|
+
def initialize(options)
|
10
|
+
@options = options
|
11
|
+
end
|
12
|
+
|
13
|
+
def visit(node)
|
14
|
+
node.instance_variable_set('@options', @options)
|
15
|
+
super
|
16
|
+
end
|
17
|
+
|
18
|
+
def visit_debug(node)
|
19
|
+
node.expr.options = @options
|
20
|
+
yield
|
21
|
+
end
|
22
|
+
|
23
|
+
def visit_each(node)
|
24
|
+
node.list.options = @options
|
25
|
+
yield
|
26
|
+
end
|
27
|
+
|
28
|
+
def visit_extend(node)
|
29
|
+
node.selector.each {|c| c.options = @options if c.is_a?(Sass::Script::Node)}
|
30
|
+
yield
|
31
|
+
end
|
32
|
+
|
33
|
+
def visit_for(node)
|
34
|
+
node.from.options = @options
|
35
|
+
node.to.options = @options
|
36
|
+
yield
|
37
|
+
end
|
38
|
+
|
39
|
+
def visit_function(node)
|
40
|
+
node.args.each do |k, v|
|
41
|
+
k.options = @options
|
42
|
+
v.options = @options if v
|
43
|
+
end
|
44
|
+
yield
|
45
|
+
end
|
46
|
+
|
47
|
+
def visit_if(node)
|
48
|
+
node.expr.options = @options if node.expr
|
49
|
+
visit(node.else) if node.else
|
50
|
+
yield
|
51
|
+
end
|
52
|
+
|
53
|
+
def visit_mixin_def(node)
|
54
|
+
node.args.each do |k, v|
|
55
|
+
k.options = @options
|
56
|
+
v.options = @options if v
|
57
|
+
end
|
58
|
+
yield
|
59
|
+
end
|
60
|
+
|
61
|
+
def visit_mixin(node)
|
62
|
+
node.args.each {|a| a.options = @options}
|
63
|
+
node.keywords.each {|k, v| v.options = @options}
|
64
|
+
yield
|
65
|
+
end
|
66
|
+
|
67
|
+
def visit_prop(node)
|
68
|
+
node.name.each {|c| c.options = @options if c.is_a?(Sass::Script::Node)}
|
69
|
+
node.value.options = @options
|
70
|
+
yield
|
71
|
+
end
|
72
|
+
|
73
|
+
def visit_return(node)
|
74
|
+
node.expr.options = @options
|
75
|
+
yield
|
76
|
+
end
|
77
|
+
|
78
|
+
def visit_rule(node)
|
79
|
+
node.rule.each {|c| c.options = @options if c.is_a?(Sass::Script::Node)}
|
80
|
+
yield
|
81
|
+
end
|
82
|
+
|
83
|
+
def visit_variable(node)
|
84
|
+
node.expr.options = @options
|
85
|
+
yield
|
86
|
+
end
|
87
|
+
|
88
|
+
def visit_warn(node)
|
89
|
+
node.expr.options = @options
|
90
|
+
yield
|
91
|
+
end
|
92
|
+
|
93
|
+
def visit_while(node)
|
94
|
+
node.expr.options = @options
|
95
|
+
yield
|
96
|
+
end
|
97
|
+
end
|
@@ -156,6 +156,10 @@ MESSAGE
|
|
156
156
|
if node.style != :compressed
|
157
157
|
if node.options[:debug_info]
|
158
158
|
to_return << visit(debug_info_rule(node.debug_info, node.options)) << "\n"
|
159
|
+
elsif node.options[:trace_selectors]
|
160
|
+
to_return << "#{old_spaces}/* "
|
161
|
+
to_return << node.stack_trace.join("\n #{old_spaces}")
|
162
|
+
to_return << " */\n"
|
159
163
|
elsif node.options[:line_comments]
|
160
164
|
to_return << "#{old_spaces}/* line #{node.line}"
|
161
165
|
|
@@ -204,7 +208,7 @@ MESSAGE
|
|
204
208
|
[Sass::Selector::Element.new(k.to_s.gsub(/[^\w-]/, "\\\\\\0"), nil)])
|
205
209
|
])
|
206
210
|
])
|
207
|
-
prop = Sass::Tree::PropNode.new([""],
|
211
|
+
prop = Sass::Tree::PropNode.new([""], Sass::Script::String.new(''), :new)
|
208
212
|
prop.resolved_name = "font-family"
|
209
213
|
prop.resolved_value = Sass::SCSS::RX.escape_ident(v.to_s)
|
210
214
|
rule << prop
|
data/lib/sass/tree/warn_node.rb
CHANGED
@@ -6,19 +6,13 @@ module Sass
|
|
6
6
|
class WarnNode < Node
|
7
7
|
# The expression to print.
|
8
8
|
# @return [Script::Node]
|
9
|
-
|
9
|
+
attr_accessor :expr
|
10
10
|
|
11
11
|
# @param expr [Script::Node] The expression to print
|
12
12
|
def initialize(expr)
|
13
13
|
@expr = expr
|
14
14
|
super()
|
15
15
|
end
|
16
|
-
|
17
|
-
# Returns sub nodes that are not tree children.
|
18
|
-
def subnodes
|
19
|
-
Array(expr)
|
20
|
-
end
|
21
|
-
|
22
16
|
end
|
23
17
|
end
|
24
18
|
end
|
data/lib/sass/tree/while_node.rb
CHANGED
@@ -7,18 +7,12 @@ module Sass::Tree
|
|
7
7
|
class WhileNode < Node
|
8
8
|
# The parse tree for the continuation expression.
|
9
9
|
# @return [Script::Node]
|
10
|
-
|
10
|
+
attr_accessor :expr
|
11
11
|
|
12
12
|
# @param expr [Script::Node] See \{#expr}
|
13
13
|
def initialize(expr)
|
14
14
|
@expr = expr
|
15
15
|
super()
|
16
16
|
end
|
17
|
-
|
18
|
-
# Returns sub nodes that are not tree children.
|
19
|
-
def subnodes
|
20
|
-
Array(expr)
|
21
|
-
end
|
22
|
-
|
23
17
|
end
|
24
18
|
end
|
data/test/sass/cache_test.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
require File.dirname(__FILE__) + '/../test_helper'
|
3
|
+
require File.dirname(__FILE__) + '/test_helper'
|
3
4
|
require 'sass/engine'
|
4
5
|
|
5
6
|
class CacheTest < Test::Unit::TestCase
|
@@ -11,6 +12,7 @@ class CacheTest < Test::Unit::TestCase
|
|
11
12
|
|
12
13
|
def teardown
|
13
14
|
FileUtils.rm_rf @@cache_dir
|
15
|
+
clean_up_sassc
|
14
16
|
end
|
15
17
|
|
16
18
|
def test_file_cache_writes_a_file
|
@@ -64,6 +66,19 @@ class CacheTest < Test::Unit::TestCase
|
|
64
66
|
assert_equal an_object, cache.retrieve("an_object", "")
|
65
67
|
end
|
66
68
|
|
69
|
+
class Unmarshalable
|
70
|
+
def _dump(_)
|
71
|
+
raise 'Unmarshalable'
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
75
|
+
def test_cache_node_with_unmarshalable_option
|
76
|
+
engine = Sass::Engine.new("foo {a: b + c}",
|
77
|
+
:syntax => :scss, :object => Unmarshalable.new, :filename => 'file.scss',
|
78
|
+
:importer => Sass::Importers::Filesystem.new(absolutize('templates')))
|
79
|
+
engine.to_tree
|
80
|
+
end
|
81
|
+
|
67
82
|
private
|
68
83
|
def root_node
|
69
84
|
Sass::Engine.new(<<-SCSS, :syntax => :scss).to_tree
|
data/test/sass/engine_test.rb
CHANGED
@@ -305,6 +305,23 @@ SASS
|
|
305
305
|
end
|
306
306
|
end
|
307
307
|
|
308
|
+
def test_selector_tracing
|
309
|
+
actual_css = render(<<-SCSS, :syntax => :scss, :trace_selectors => true)
|
310
|
+
@mixin mixed {
|
311
|
+
.mixed { color: red; }
|
312
|
+
}
|
313
|
+
.context {
|
314
|
+
@include mixed;
|
315
|
+
}
|
316
|
+
SCSS
|
317
|
+
assert_equal(<<CSS,actual_css)
|
318
|
+
/* on line 2 of test_selector_tracing_inline.scss, in `mixed'
|
319
|
+
from line 5 of test_selector_tracing_inline.scss */
|
320
|
+
.context .mixed {
|
321
|
+
color: red; }
|
322
|
+
CSS
|
323
|
+
end
|
324
|
+
|
308
325
|
def test_mixin_exception
|
309
326
|
render(<<SASS)
|
310
327
|
=error-mixin($a)
|
@@ -1787,11 +1804,11 @@ SASS
|
|
1787
1804
|
def test_warn_directive
|
1788
1805
|
expected_warning = <<EXPECTATION
|
1789
1806
|
WARNING: this is a warning
|
1790
|
-
|
1807
|
+
on line 4 of test_warn_directive_inline.sass
|
1791
1808
|
|
1792
1809
|
WARNING: this is a mixin warning
|
1793
|
-
|
1794
|
-
|
1810
|
+
on line 2 of test_warn_directive_inline.sass, in `foo'
|
1811
|
+
from line 7 of test_warn_directive_inline.sass
|
1795
1812
|
EXPECTATION
|
1796
1813
|
assert_warning expected_warning do
|
1797
1814
|
assert_equal <<CSS, render(<<SASS)
|
@@ -1821,15 +1838,15 @@ SASS
|
|
1821
1838
|
def test_warn_with_imports
|
1822
1839
|
expected_warning = <<WARN
|
1823
1840
|
WARNING: In the main file
|
1824
|
-
|
1841
|
+
on line 1 of #{File.dirname(__FILE__)}/templates/warn.sass
|
1825
1842
|
|
1826
1843
|
WARNING: Imported
|
1827
|
-
|
1828
|
-
|
1844
|
+
on line 1 of #{File.dirname(__FILE__)}/templates/warn_imported.sass
|
1845
|
+
from line 2 of #{File.dirname(__FILE__)}/templates/warn.sass
|
1829
1846
|
|
1830
1847
|
WARNING: In an imported mixin
|
1831
|
-
|
1832
|
-
|
1848
|
+
on line 4 of #{File.dirname(__FILE__)}/templates/warn_imported.sass, in `emits-a-warning'
|
1849
|
+
from line 3 of #{File.dirname(__FILE__)}/templates/warn.sass
|
1833
1850
|
WARN
|
1834
1851
|
assert_warning expected_warning do
|
1835
1852
|
renders_correctly "warn", :style => :compact, :load_paths => [File.dirname(__FILE__) + "/templates"]
|
data/test/sass/scss/scss_test.rb
CHANGED
@@ -1244,6 +1244,14 @@ foo {
|
|
1244
1244
|
a: $var1;
|
1245
1245
|
b: $var2;
|
1246
1246
|
c: $var3; }
|
1247
|
+
SCSS
|
1248
|
+
end
|
1249
|
+
|
1250
|
+
def test_options_passed_to_script
|
1251
|
+
assert_equal <<CSS, render(<<SCSS, :style => :compressed)
|
1252
|
+
foo{color:#000}
|
1253
|
+
CSS
|
1254
|
+
foo {color: darken(black, 10%)}
|
1247
1255
|
SCSS
|
1248
1256
|
end
|
1249
1257
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sass
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 15
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 3
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 3.1.
|
9
|
+
- 6
|
10
|
+
version: 3.1.6
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Nathan Weizenbaum
|
@@ -17,7 +17,7 @@ autorequire:
|
|
17
17
|
bindir: bin
|
18
18
|
cert_chain: []
|
19
19
|
|
20
|
-
date: 2011-
|
20
|
+
date: 2011-08-02 00:00:00 -07:00
|
21
21
|
default_executable:
|
22
22
|
dependencies:
|
23
23
|
- !ruby/object:Gem::Dependency
|
@@ -63,246 +63,248 @@ extra_rdoc_files: []
|
|
63
63
|
|
64
64
|
files:
|
65
65
|
- rails/init.rb
|
66
|
-
- lib/sass
|
67
|
-
- lib/sass/
|
68
|
-
- lib/sass/error.rb
|
69
|
-
- lib/sass/importers.rb
|
70
|
-
- lib/sass/cache_stores/filesystem.rb
|
71
|
-
- lib/sass/cache_stores/chain.rb
|
72
|
-
- lib/sass/cache_stores/memory.rb
|
73
|
-
- lib/sass/cache_stores/null.rb
|
74
|
-
- lib/sass/cache_stores/base.rb
|
75
|
-
- lib/sass/environment.rb
|
76
|
-
- lib/sass/plugin/rack.rb
|
77
|
-
- lib/sass/plugin/staleness_checker.rb
|
66
|
+
- lib/sass.rb
|
67
|
+
- lib/sass/cache_stores.rb
|
78
68
|
- lib/sass/plugin/compiler.rb
|
79
|
-
- lib/sass/plugin/configuration.rb
|
80
69
|
- lib/sass/plugin/merb.rb
|
70
|
+
- lib/sass/plugin/staleness_checker.rb
|
71
|
+
- lib/sass/plugin/rack.rb
|
81
72
|
- lib/sass/plugin/rails.rb
|
73
|
+
- lib/sass/plugin/configuration.rb
|
82
74
|
- lib/sass/plugin/generic.rb
|
83
|
-
- lib/sass/railtie.rb
|
84
|
-
- lib/sass/logger.rb
|
85
|
-
- lib/sass/callbacks.rb
|
86
|
-
- lib/sass/script/string.rb
|
87
|
-
- lib/sass/script/node.rb
|
88
|
-
- lib/sass/script/lexer.rb
|
89
|
-
- lib/sass/script/string_interpolation.rb
|
90
|
-
- lib/sass/script/css_parser.rb
|
91
|
-
- lib/sass/script/variable.rb
|
92
|
-
- lib/sass/script/literal.rb
|
93
|
-
- lib/sass/script/bool.rb
|
94
|
-
- lib/sass/script/number.rb
|
95
|
-
- lib/sass/script/unary_operation.rb
|
96
|
-
- lib/sass/script/css_lexer.rb
|
97
|
-
- lib/sass/script/operation.rb
|
98
|
-
- lib/sass/script/parser.rb
|
99
|
-
- lib/sass/script/funcall.rb
|
100
|
-
- lib/sass/script/color.rb
|
101
|
-
- lib/sass/script/interpolation.rb
|
102
|
-
- lib/sass/script/list.rb
|
103
|
-
- lib/sass/script/functions.rb
|
104
75
|
- lib/sass/version.rb
|
105
|
-
- lib/sass/
|
106
|
-
- lib/sass/
|
107
|
-
- lib/sass/
|
108
|
-
- lib/sass/
|
109
|
-
- lib/sass/
|
110
|
-
- lib/sass/
|
76
|
+
- lib/sass/cache_stores/chain.rb
|
77
|
+
- lib/sass/cache_stores/memory.rb
|
78
|
+
- lib/sass/cache_stores/null.rb
|
79
|
+
- lib/sass/cache_stores/filesystem.rb
|
80
|
+
- lib/sass/cache_stores/base.rb
|
81
|
+
- lib/sass/shared.rb
|
82
|
+
- lib/sass/repl.rb
|
83
|
+
- lib/sass/error.rb
|
84
|
+
- lib/sass/tree/import_node.rb
|
85
|
+
- lib/sass/tree/return_node.rb
|
111
86
|
- lib/sass/tree/root_node.rb
|
112
|
-
- lib/sass/tree/node.rb
|
113
87
|
- lib/sass/tree/if_node.rb
|
114
88
|
- lib/sass/tree/charset_node.rb
|
115
|
-
- lib/sass/tree/
|
116
|
-
- lib/sass/tree/
|
117
|
-
- lib/sass/tree/
|
118
|
-
- lib/sass/tree/
|
119
|
-
- lib/sass/tree/mixin_node.rb
|
120
|
-
- lib/sass/tree/prop_node.rb
|
121
|
-
- lib/sass/tree/warn_node.rb
|
89
|
+
- lib/sass/tree/function_node.rb
|
90
|
+
- lib/sass/tree/media_node.rb
|
91
|
+
- lib/sass/tree/while_node.rb
|
92
|
+
- lib/sass/tree/for_node.rb
|
122
93
|
- lib/sass/tree/directive_node.rb
|
94
|
+
- lib/sass/tree/rule_node.rb
|
123
95
|
- lib/sass/tree/each_node.rb
|
96
|
+
- lib/sass/tree/node.rb
|
97
|
+
- lib/sass/tree/mixin_node.rb
|
98
|
+
- lib/sass/tree/extend_node.rb
|
99
|
+
- lib/sass/tree/mixin_def_node.rb
|
100
|
+
- lib/sass/tree/visitors/perform.rb
|
101
|
+
- lib/sass/tree/visitors/to_css.rb
|
102
|
+
- lib/sass/tree/visitors/check_nesting.rb
|
103
|
+
- lib/sass/tree/visitors/deep_copy.rb
|
104
|
+
- lib/sass/tree/visitors/set_options.rb
|
105
|
+
- lib/sass/tree/visitors/cssize.rb
|
106
|
+
- lib/sass/tree/visitors/convert.rb
|
107
|
+
- lib/sass/tree/visitors/base.rb
|
124
108
|
- lib/sass/tree/comment_node.rb
|
125
|
-
- lib/sass/tree/
|
126
|
-
- lib/sass/tree/variable_node.rb
|
127
|
-
- lib/sass/tree/function_node.rb
|
109
|
+
- lib/sass/tree/warn_node.rb
|
128
110
|
- lib/sass/tree/debug_node.rb
|
129
|
-
- lib/sass/tree/
|
130
|
-
- lib/sass/tree/
|
131
|
-
- lib/sass/
|
111
|
+
- lib/sass/tree/prop_node.rb
|
112
|
+
- lib/sass/tree/variable_node.rb
|
113
|
+
- lib/sass/engine.rb
|
114
|
+
- lib/sass/plugin.rb
|
115
|
+
- lib/sass/root.rb
|
116
|
+
- lib/sass/importers.rb
|
117
|
+
- lib/sass/logger.rb
|
118
|
+
- lib/sass/util/subset_map.rb
|
119
|
+
- lib/sass/scss.rb
|
120
|
+
- lib/sass/scss/static_parser.rb
|
121
|
+
- lib/sass/scss/parser.rb
|
132
122
|
- lib/sass/scss/sass_parser.rb
|
133
|
-
- lib/sass/scss/script_parser.rb
|
134
|
-
- lib/sass/scss/css_parser.rb
|
135
123
|
- lib/sass/scss/script_lexer.rb
|
136
124
|
- lib/sass/scss/rx.rb
|
137
|
-
- lib/sass/scss/
|
138
|
-
- lib/sass/scss/
|
125
|
+
- lib/sass/scss/script_parser.rb
|
126
|
+
- lib/sass/scss/css_parser.rb
|
127
|
+
- lib/sass/logger/log_level.rb
|
128
|
+
- lib/sass/logger/base.rb
|
129
|
+
- lib/sass/css.rb
|
130
|
+
- lib/sass/script.rb
|
131
|
+
- lib/sass/util.rb
|
132
|
+
- lib/sass/importers/filesystem.rb
|
133
|
+
- lib/sass/importers/base.rb
|
134
|
+
- lib/sass/script/color.rb
|
135
|
+
- lib/sass/script/variable.rb
|
136
|
+
- lib/sass/script/operation.rb
|
137
|
+
- lib/sass/script/funcall.rb
|
138
|
+
- lib/sass/script/literal.rb
|
139
|
+
- lib/sass/script/parser.rb
|
140
|
+
- lib/sass/script/functions.rb
|
141
|
+
- lib/sass/script/number.rb
|
142
|
+
- lib/sass/script/string_interpolation.rb
|
143
|
+
- lib/sass/script/interpolation.rb
|
144
|
+
- lib/sass/script/node.rb
|
145
|
+
- lib/sass/script/bool.rb
|
146
|
+
- lib/sass/script/unary_operation.rb
|
147
|
+
- lib/sass/script/lexer.rb
|
148
|
+
- lib/sass/script/list.rb
|
149
|
+
- lib/sass/script/css_lexer.rb
|
150
|
+
- lib/sass/script/string.rb
|
151
|
+
- lib/sass/script/css_parser.rb
|
152
|
+
- lib/sass/selector.rb
|
139
153
|
- lib/sass/less.rb
|
140
|
-
- lib/sass/
|
154
|
+
- lib/sass/callbacks.rb
|
141
155
|
- lib/sass/selector/simple.rb
|
142
156
|
- lib/sass/selector/sequence.rb
|
143
157
|
- lib/sass/selector/abstract_sequence.rb
|
144
158
|
- lib/sass/selector/comma_sequence.rb
|
145
|
-
- lib/sass/
|
146
|
-
- lib/sass/
|
147
|
-
- lib/sass/
|
148
|
-
- lib/sass/css.rb
|
149
|
-
- lib/sass/selector.rb
|
150
|
-
- lib/sass/engine.rb
|
151
|
-
- lib/sass/plugin.rb
|
152
|
-
- lib/sass/logger/log_level.rb
|
153
|
-
- lib/sass/logger/base.rb
|
154
|
-
- lib/sass/repl.rb
|
155
|
-
- lib/sass/scss.rb
|
159
|
+
- lib/sass/selector/simple_sequence.rb
|
160
|
+
- lib/sass/railtie.rb
|
161
|
+
- lib/sass/environment.rb
|
156
162
|
- lib/sass/exec.rb
|
157
|
-
-
|
158
|
-
-
|
159
|
-
-
|
160
|
-
- lib/sass.rb
|
161
|
-
- vendor/fssm/lib/fssm.rb
|
162
|
-
- vendor/fssm/lib/fssm/path.rb
|
163
|
-
- vendor/fssm/lib/fssm/tree.rb
|
164
|
-
- vendor/fssm/lib/fssm/monitor.rb
|
165
|
-
- vendor/fssm/lib/fssm/support.rb
|
166
|
-
- vendor/fssm/lib/fssm/pathname.rb
|
163
|
+
- vendor/fssm/README.markdown
|
164
|
+
- vendor/fssm/example.rb
|
165
|
+
- vendor/fssm/Gemfile
|
167
166
|
- vendor/fssm/lib/fssm/version.rb
|
167
|
+
- vendor/fssm/lib/fssm/pathname.rb
|
168
168
|
- vendor/fssm/lib/fssm/state/file.rb
|
169
169
|
- vendor/fssm/lib/fssm/state/directory.rb
|
170
|
-
- vendor/fssm/lib/fssm/
|
170
|
+
- vendor/fssm/lib/fssm/monitor.rb
|
171
|
+
- vendor/fssm/lib/fssm/tree.rb
|
172
|
+
- vendor/fssm/lib/fssm/support.rb
|
173
|
+
- vendor/fssm/lib/fssm/backends/rubycocoa/fsevents.rb
|
171
174
|
- vendor/fssm/lib/fssm/backends/polling.rb
|
172
175
|
- vendor/fssm/lib/fssm/backends/inotify.rb
|
173
|
-
- vendor/fssm/lib/fssm/backends/
|
176
|
+
- vendor/fssm/lib/fssm/backends/fsevents.rb
|
174
177
|
- vendor/fssm/lib/fssm/backends/rbfsevent.rb
|
175
|
-
- vendor/fssm/
|
176
|
-
- vendor/fssm/
|
177
|
-
- vendor/fssm/README.markdown
|
178
|
-
- vendor/fssm/Rakefile
|
179
|
-
- vendor/fssm/profile/prof-fssm-pathname.html
|
180
|
-
- vendor/fssm/profile/prof-pathname.rb
|
178
|
+
- vendor/fssm/lib/fssm/path.rb
|
179
|
+
- vendor/fssm/lib/fssm.rb
|
181
180
|
- vendor/fssm/profile/prof-plain-pathname.html
|
182
|
-
- vendor/fssm/profile/prof-pathname
|
183
|
-
- vendor/fssm/profile/prof-cache.rb
|
181
|
+
- vendor/fssm/profile/prof-pathname.rb
|
184
182
|
- vendor/fssm/profile/prof.html
|
185
|
-
- vendor/fssm/
|
183
|
+
- vendor/fssm/profile/prof-cache.rb
|
184
|
+
- vendor/fssm/profile/prof-fssm-pathname.html
|
185
|
+
- vendor/fssm/profile/prof-pathname-rubinius.rb
|
186
186
|
- vendor/fssm/fssm.gemspec
|
187
|
-
- vendor/fssm/
|
187
|
+
- vendor/fssm/Rakefile
|
188
|
+
- vendor/fssm/LICENSE
|
189
|
+
- vendor/fssm/spec/count_down_latch.rb
|
188
190
|
- vendor/fssm/spec/monitor_spec.rb
|
189
191
|
- vendor/fssm/spec/path_spec.rb
|
190
|
-
- vendor/fssm/spec/count_down_latch.rb
|
191
|
-
- vendor/fssm/spec/root/duck/quack.txt
|
192
192
|
- vendor/fssm/spec/root/moo/cow.txt
|
193
|
-
- vendor/fssm/spec/root/file.rb
|
194
|
-
- vendor/fssm/spec/root/file.css
|
195
193
|
- vendor/fssm/spec/root/file.yml
|
196
|
-
-
|
197
|
-
-
|
194
|
+
- vendor/fssm/spec/root/file.css
|
195
|
+
- vendor/fssm/spec/root/file.rb
|
196
|
+
- vendor/fssm/spec/root/duck/quack.txt
|
197
|
+
- vendor/fssm/spec/spec_helper.rb
|
198
198
|
- bin/sass-convert
|
199
|
-
-
|
200
|
-
-
|
199
|
+
- bin/scss
|
200
|
+
- bin/sass
|
201
|
+
- test/test_helper.rb
|
202
|
+
- test/sass/engine_test.rb
|
203
|
+
- test/sass/functions_test.rb
|
204
|
+
- test/sass/fixtures/test_staleness_check_across_importers.scss
|
205
|
+
- test/sass/fixtures/test_staleness_check_across_importers.css
|
206
|
+
- test/sass/data/hsl-rgb.txt
|
207
|
+
- test/sass/extend_test.rb
|
208
|
+
- test/sass/logger_test.rb
|
209
|
+
- test/sass/css2sass_test.rb
|
201
210
|
- test/sass/templates/basic.sass
|
202
|
-
- test/sass/templates/
|
203
|
-
- test/sass/templates/
|
204
|
-
- test/sass/templates/
|
205
|
-
- test/sass/templates/
|
206
|
-
- test/sass/templates/
|
211
|
+
- test/sass/templates/mixins.sass
|
212
|
+
- test/sass/templates/options.sass
|
213
|
+
- test/sass/templates/scss_import.scss
|
214
|
+
- test/sass/templates/subdir/subdir.sass
|
215
|
+
- test/sass/templates/subdir/nested_subdir/_nested_partial.sass
|
216
|
+
- test/sass/templates/subdir/nested_subdir/nested_subdir.sass
|
217
|
+
- test/sass/templates/alt.sass
|
218
|
+
- test/sass/templates/nested_bork1.sass
|
219
|
+
- test/sass/templates/complex.sass
|
220
|
+
- test/sass/templates/units.sass
|
221
|
+
- test/sass/templates/nested_import.sass
|
222
|
+
- test/sass/templates/importee.sass
|
207
223
|
- test/sass/templates/importee.less
|
208
|
-
- test/sass/templates/warn.sass
|
209
|
-
- test/sass/templates/parent_ref.sass
|
210
|
-
- test/sass/templates/nested_bork3.sass
|
211
|
-
- test/sass/templates/script.sass
|
212
|
-
- test/sass/templates/import.sass
|
213
224
|
- test/sass/templates/scss_importee.scss
|
214
|
-
- test/sass/templates/
|
215
|
-
- test/sass/templates/
|
216
|
-
- test/sass/templates/importee.sass
|
217
|
-
- test/sass/templates/_partial.sass
|
218
|
-
- test/sass/templates/units.sass
|
219
|
-
- test/sass/templates/nested_bork1.sass
|
225
|
+
- test/sass/templates/line_numbers.sass
|
226
|
+
- test/sass/templates/expanded.sass
|
220
227
|
- test/sass/templates/bork3.sass
|
221
|
-
- test/sass/templates/
|
222
|
-
- test/sass/templates/complex.sass
|
223
|
-
- test/sass/templates/if.sass
|
228
|
+
- test/sass/templates/warn_imported.sass
|
224
229
|
- test/sass/templates/import_charset_ibm866.sass
|
225
|
-
- test/sass/templates/
|
226
|
-
- test/sass/templates/
|
230
|
+
- test/sass/templates/bork1.sass
|
231
|
+
- test/sass/templates/warn.sass
|
232
|
+
- test/sass/templates/bork2.sass
|
233
|
+
- test/sass/templates/nested.sass
|
227
234
|
- test/sass/templates/compact.sass
|
235
|
+
- test/sass/templates/multiline.sass
|
228
236
|
- test/sass/templates/_imported_charset_ibm866.sass
|
229
|
-
- test/sass/templates/
|
230
|
-
- test/sass/templates/
|
231
|
-
- test/sass/templates/
|
232
|
-
- test/sass/templates/
|
233
|
-
- test/sass/templates/
|
234
|
-
- test/sass/templates/options.sass
|
237
|
+
- test/sass/templates/import_charset.sass
|
238
|
+
- test/sass/templates/parent_ref.sass
|
239
|
+
- test/sass/templates/import.sass
|
240
|
+
- test/sass/templates/nested_bork3.sass
|
241
|
+
- test/sass/templates/script.sass
|
235
242
|
- test/sass/templates/bork4.sass
|
243
|
+
- test/sass/templates/if.sass
|
244
|
+
- test/sass/templates/_partial.sass
|
245
|
+
- test/sass/templates/nested_mixin_bork.sass
|
236
246
|
- test/sass/templates/import_charset_1_8.sass
|
247
|
+
- test/sass/templates/nested_bork2.sass
|
248
|
+
- test/sass/templates/mixin_bork.sass
|
249
|
+
- test/sass/templates/compressed.sass
|
237
250
|
- test/sass/templates/nested_bork4.sass
|
238
|
-
- test/sass/templates/
|
239
|
-
- test/sass/templates/multiline.sass
|
240
|
-
- test/sass/templates/expanded.sass
|
241
|
-
- test/sass/templates/mixins.sass
|
242
|
-
- test/sass/templates/bork2.sass
|
243
|
-
- test/sass/script_conversion_test.rb
|
244
|
-
- test/sass/mock_importer.rb
|
245
|
-
- test/sass/test_helper.rb
|
246
|
-
- test/sass/logger_test.rb
|
247
|
-
- test/sass/fixtures/test_staleness_check_across_importers.css
|
248
|
-
- test/sass/fixtures/test_staleness_check_across_importers.scss
|
249
|
-
- test/sass/functions_test.rb
|
250
|
-
- test/sass/util_test.rb
|
251
|
-
- test/sass/less_conversion_test.rb
|
252
|
-
- test/sass/more_results/more1.css
|
253
|
-
- test/sass/more_results/more1_with_line_comments.css
|
254
|
-
- test/sass/more_results/more_import.css
|
255
|
-
- test/sass/data/hsl-rgb.txt
|
256
|
-
- test/sass/scss/test_helper.rb
|
257
|
-
- test/sass/scss/css_test.rb
|
258
|
-
- test/sass/scss/rx_test.rb
|
259
|
-
- test/sass/scss/scss_test.rb
|
260
|
-
- test/sass/script_test.rb
|
261
|
-
- test/sass/importer_test.rb
|
262
|
-
- test/sass/cache_test.rb
|
251
|
+
- test/sass/templates/_imported_charset_utf8.sass
|
263
252
|
- test/sass/conversion_test.rb
|
264
|
-
- test/sass/
|
265
|
-
- test/sass/
|
266
|
-
- test/sass/more_templates/more_import.sass
|
267
|
-
- test/sass/extend_test.rb
|
268
|
-
- test/sass/engine_test.rb
|
269
|
-
- test/sass/css2sass_test.rb
|
253
|
+
- test/sass/script_test.rb
|
254
|
+
- test/sass/util/subset_map_test.rb
|
270
255
|
- test/sass/callbacks_test.rb
|
271
|
-
- test/sass/
|
272
|
-
- test/sass/
|
273
|
-
- test/sass/
|
274
|
-
- test/sass/
|
275
|
-
- test/sass/
|
256
|
+
- test/sass/importer_test.rb
|
257
|
+
- test/sass/scss/css_test.rb
|
258
|
+
- test/sass/scss/scss_test.rb
|
259
|
+
- test/sass/scss/rx_test.rb
|
260
|
+
- test/sass/scss/test_helper.rb
|
261
|
+
- test/sass/util_test.rb
|
262
|
+
- test/sass/results/mixins.css
|
263
|
+
- test/sass/results/warn_imported.css
|
276
264
|
- test/sass/results/expanded.css
|
277
|
-
- test/sass/results/
|
278
|
-
- test/sass/results/
|
279
|
-
- test/sass/results/
|
280
|
-
- test/sass/results/
|
281
|
-
- test/sass/results/
|
265
|
+
- test/sass/results/compact.css
|
266
|
+
- test/sass/results/compressed.css
|
267
|
+
- test/sass/results/scss_importee.css
|
268
|
+
- test/sass/results/basic.css
|
269
|
+
- test/sass/results/subdir/nested_subdir/nested_subdir.css
|
270
|
+
- test/sass/results/subdir/subdir.css
|
282
271
|
- test/sass/results/options.css
|
283
|
-
- test/sass/results/
|
272
|
+
- test/sass/results/scss_import.css
|
273
|
+
- test/sass/results/units.css
|
284
274
|
- test/sass/results/parent_ref.css
|
275
|
+
- test/sass/results/script.css
|
276
|
+
- test/sass/results/complex.css
|
277
|
+
- test/sass/results/import_charset.css
|
278
|
+
- test/sass/results/alt.css
|
279
|
+
- test/sass/results/if.css
|
285
280
|
- test/sass/results/multiline.css
|
281
|
+
- test/sass/results/import_charset_1_8.css
|
282
|
+
- test/sass/results/warn.css
|
286
283
|
- test/sass/results/import_charset_ibm866.css
|
287
|
-
- test/sass/results/subdir/subdir.css
|
288
|
-
- test/sass/results/subdir/nested_subdir/nested_subdir.css
|
289
|
-
- test/sass/results/warn_imported.css
|
290
|
-
- test/sass/results/compact.css
|
291
|
-
- test/sass/results/mixins.css
|
292
|
-
- test/sass/results/complex.css
|
293
|
-
- test/sass/results/compressed.css
|
294
284
|
- test/sass/results/import.css
|
295
|
-
- test/sass/results/
|
296
|
-
- test/
|
285
|
+
- test/sass/results/nested.css
|
286
|
+
- test/sass/results/line_numbers.css
|
287
|
+
- test/sass/test_helper.rb
|
288
|
+
- test/sass/more_templates/_more_partial.sass
|
289
|
+
- test/sass/more_templates/more_import.sass
|
290
|
+
- test/sass/more_templates/more1.sass
|
291
|
+
- test/sass/script_conversion_test.rb
|
292
|
+
- test/sass/less_conversion_test.rb
|
293
|
+
- test/sass/more_results/more1.css
|
294
|
+
- test/sass/more_results/more1_with_line_comments.css
|
295
|
+
- test/sass/more_results/more_import.css
|
296
|
+
- test/sass/mock_importer.rb
|
297
|
+
- test/sass/cache_test.rb
|
298
|
+
- test/sass/plugin_test.rb
|
297
299
|
- extra/update_watch.rb
|
298
300
|
- Rakefile
|
299
301
|
- init.rb
|
300
302
|
- .yardopts
|
301
|
-
-
|
303
|
+
- README.md
|
304
|
+
- VERSION_NAME
|
302
305
|
- REVISION
|
306
|
+
- MIT-LICENSE
|
303
307
|
- VERSION
|
304
|
-
- VERSION_NAME
|
305
|
-
- README.md
|
306
308
|
- CONTRIBUTING
|
307
309
|
has_rdoc: false
|
308
310
|
homepage: http://sass-lang.com/
|
@@ -339,21 +341,21 @@ signing_key:
|
|
339
341
|
specification_version: 3
|
340
342
|
summary: A powerful but elegant CSS compiler that makes CSS fun again.
|
341
343
|
test_files:
|
342
|
-
- test/sass/
|
343
|
-
- test/sass/util/subset_map_test.rb
|
344
|
-
- test/sass/script_conversion_test.rb
|
345
|
-
- test/sass/logger_test.rb
|
344
|
+
- test/sass/engine_test.rb
|
346
345
|
- test/sass/functions_test.rb
|
347
|
-
- test/sass/util_test.rb
|
348
|
-
- test/sass/less_conversion_test.rb
|
349
|
-
- test/sass/scss/css_test.rb
|
350
|
-
- test/sass/scss/rx_test.rb
|
351
|
-
- test/sass/scss/scss_test.rb
|
352
|
-
- test/sass/script_test.rb
|
353
|
-
- test/sass/importer_test.rb
|
354
|
-
- test/sass/cache_test.rb
|
355
|
-
- test/sass/conversion_test.rb
|
356
346
|
- test/sass/extend_test.rb
|
357
|
-
- test/sass/
|
347
|
+
- test/sass/logger_test.rb
|
358
348
|
- test/sass/css2sass_test.rb
|
349
|
+
- test/sass/conversion_test.rb
|
350
|
+
- test/sass/script_test.rb
|
351
|
+
- test/sass/util/subset_map_test.rb
|
359
352
|
- test/sass/callbacks_test.rb
|
353
|
+
- test/sass/importer_test.rb
|
354
|
+
- test/sass/scss/css_test.rb
|
355
|
+
- test/sass/scss/scss_test.rb
|
356
|
+
- test/sass/scss/rx_test.rb
|
357
|
+
- test/sass/util_test.rb
|
358
|
+
- test/sass/script_conversion_test.rb
|
359
|
+
- test/sass/less_conversion_test.rb
|
360
|
+
- test/sass/cache_test.rb
|
361
|
+
- test/sass/plugin_test.rb
|