less 1.2.21 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (165) hide show
  1. data/.gitignore +4 -3
  2. data/.gitmodules +6 -0
  3. data/Gemfile +3 -0
  4. data/README.md +39 -46
  5. data/Rakefile +5 -50
  6. data/bin/lessc +1 -100
  7. data/less.gemspec +21 -125
  8. data/lib/less.rb +11 -30
  9. data/{LICENSE → lib/less/js/LICENSE} +1 -1
  10. data/lib/less/js/Makefile +56 -0
  11. data/lib/less/js/README.md +20 -0
  12. data/lib/less/js/benchmark/benchmark.less +3979 -0
  13. data/lib/less/js/benchmark/less-benchmark.js +49 -0
  14. data/lib/less/js/bin/lessc +105 -0
  15. data/lib/less/js/build/ecma-5.js +120 -0
  16. data/lib/less/js/build/header.js +7 -0
  17. data/lib/less/js/build/require.js +7 -0
  18. data/lib/less/js/dist/less-1.0.44.js +2655 -0
  19. data/lib/less/js/dist/less-1.1.0.js +2695 -0
  20. data/lib/less/js/dist/less-1.1.0.min.js +16 -0
  21. data/lib/less/js/dist/less-1.1.1.js +2710 -0
  22. data/lib/less/js/dist/less-1.1.1.min.js +16 -0
  23. data/lib/less/js/dist/less-1.1.2.js +2712 -0
  24. data/lib/less/js/dist/less-1.1.2.min.js +16 -0
  25. data/lib/less/js/dist/less-1.1.3.js +2721 -0
  26. data/lib/less/js/dist/less-1.1.3.min.js +16 -0
  27. data/lib/less/js/lib/less/browser.js +369 -0
  28. data/lib/less/js/lib/less/functions.js +174 -0
  29. data/lib/less/js/lib/less/index.js +137 -0
  30. data/lib/less/js/lib/less/parser.js +1098 -0
  31. data/lib/less/js/lib/less/tree.js +13 -0
  32. data/lib/less/js/lib/less/tree/alpha.js +17 -0
  33. data/lib/less/js/lib/less/tree/anonymous.js +13 -0
  34. data/lib/less/js/lib/less/tree/call.js +45 -0
  35. data/lib/less/js/lib/less/tree/color.js +98 -0
  36. data/lib/less/js/lib/less/tree/comment.js +14 -0
  37. data/lib/less/js/lib/less/tree/dimension.js +34 -0
  38. data/lib/less/js/lib/less/tree/directive.js +33 -0
  39. data/lib/less/js/lib/less/tree/element.js +32 -0
  40. data/lib/less/js/lib/less/tree/expression.js +23 -0
  41. data/lib/less/js/lib/less/tree/import.js +77 -0
  42. data/lib/less/js/lib/less/tree/javascript.js +51 -0
  43. data/lib/less/js/lib/less/tree/keyword.js +9 -0
  44. data/lib/less/js/lib/less/tree/mixin.js +106 -0
  45. data/lib/less/js/lib/less/tree/operation.js +32 -0
  46. data/lib/less/js/lib/less/tree/quoted.js +29 -0
  47. data/lib/less/js/lib/less/tree/rule.js +38 -0
  48. data/lib/less/js/lib/less/tree/ruleset.js +179 -0
  49. data/lib/less/js/lib/less/tree/selector.js +28 -0
  50. data/lib/less/js/lib/less/tree/url.js +25 -0
  51. data/lib/less/js/lib/less/tree/value.js +24 -0
  52. data/lib/less/js/lib/less/tree/variable.js +24 -0
  53. data/lib/less/js/package.json +13 -0
  54. data/lib/less/js/test/css/colors.css +42 -0
  55. data/lib/less/js/test/css/comments.css +52 -0
  56. data/lib/less/js/test/css/css-3.css +42 -0
  57. data/lib/less/js/test/css/css-escapes.css +20 -0
  58. data/lib/less/js/test/css/css.css +82 -0
  59. data/lib/less/js/test/css/functions.css +30 -0
  60. data/{spec → lib/less/js/test}/css/import.css +4 -2
  61. data/lib/less/js/test/css/javascript.css +22 -0
  62. data/lib/less/js/test/css/lazy-eval.css +3 -0
  63. data/lib/less/js/test/css/media.css +21 -0
  64. data/lib/less/js/test/css/mixins-args.css +61 -0
  65. data/lib/less/js/test/css/mixins-closure.css +9 -0
  66. data/lib/less/js/test/css/mixins-nested.css +14 -0
  67. data/lib/less/js/test/css/mixins-pattern.css +49 -0
  68. data/lib/less/js/test/css/mixins.css +50 -0
  69. data/{spec → lib/less/js/test}/css/operations.css +20 -2
  70. data/{spec → lib/less/js/test}/css/parens.css +0 -0
  71. data/lib/less/js/test/css/rulesets.css +29 -0
  72. data/{spec → lib/less/js/test}/css/scope.css +6 -2
  73. data/lib/less/js/test/css/selectors.css +32 -0
  74. data/lib/less/js/test/css/strings.css +38 -0
  75. data/lib/less/js/test/css/variables.css +24 -0
  76. data/lib/less/js/test/css/whitespace.css +36 -0
  77. data/lib/less/js/test/less-test.js +75 -0
  78. data/{spec → lib/less/js/test}/less/colors.less +13 -2
  79. data/{spec → lib/less/js/test}/less/comments.less +19 -2
  80. data/{spec → lib/less/js/test}/less/css-3.less +4 -1
  81. data/lib/less/js/test/less/css-escapes.less +28 -0
  82. data/{spec → lib/less/js/test}/less/css.less +10 -18
  83. data/lib/less/js/test/less/functions.less +35 -0
  84. data/{spec → lib/less/js/test}/less/import.less +1 -1
  85. data/{spec → lib/less/js/test}/less/import/import-test-a.less +0 -0
  86. data/{spec → lib/less/js/test}/less/import/import-test-b.less +0 -0
  87. data/{spec → lib/less/js/test}/less/import/import-test-c.less +0 -0
  88. data/{spec → lib/less/js/test}/less/import/import-test-d.css +0 -0
  89. data/lib/less/js/test/less/javascript.less +27 -0
  90. data/{spec → lib/less/js/test}/less/lazy-eval.less +0 -0
  91. data/lib/less/js/test/less/media.less +25 -0
  92. data/lib/less/js/test/less/mixins-args.less +118 -0
  93. data/lib/less/js/test/less/mixins-closure.less +26 -0
  94. data/lib/less/js/test/less/mixins-nested.less +22 -0
  95. data/lib/less/js/test/less/mixins-pattern.less +96 -0
  96. data/{spec → lib/less/js/test}/less/mixins.less +8 -4
  97. data/{spec → lib/less/js/test}/less/operations.less +19 -0
  98. data/{spec → lib/less/js/test}/less/parens.less +0 -0
  99. data/{spec → lib/less/js/test}/less/rulesets.less +2 -2
  100. data/{spec → lib/less/js/test}/less/scope.less +1 -1
  101. data/{spec → lib/less/js/test}/less/selectors.less +1 -1
  102. data/lib/less/js/test/less/strings.less +49 -0
  103. data/lib/less/js/test/less/variables.less +50 -0
  104. data/{spec → lib/less/js/test}/less/whitespace.less +3 -0
  105. data/lib/less/loader.rb +67 -0
  106. data/lib/less/parser.rb +46 -0
  107. data/lib/less/version.rb +3 -0
  108. data/spec/less/one/one.less +1 -0
  109. data/spec/less/parser_spec.rb +30 -0
  110. data/spec/less/two/two.less +1 -0
  111. data/spec/spec_helper.rb +2 -7
  112. metadata +156 -106
  113. data/CHANGELOG +0 -62
  114. data/VERSION +0 -1
  115. data/lib/less/command.rb +0 -110
  116. data/lib/less/engine.rb +0 -52
  117. data/lib/less/engine/grammar/common.tt +0 -29
  118. data/lib/less/engine/grammar/entity.tt +0 -144
  119. data/lib/less/engine/grammar/less.tt +0 -341
  120. data/lib/less/engine/nodes.rb +0 -9
  121. data/lib/less/engine/nodes/element.rb +0 -281
  122. data/lib/less/engine/nodes/entity.rb +0 -79
  123. data/lib/less/engine/nodes/function.rb +0 -93
  124. data/lib/less/engine/nodes/literal.rb +0 -171
  125. data/lib/less/engine/nodes/property.rb +0 -232
  126. data/lib/less/engine/nodes/ruleset.rb +0 -12
  127. data/lib/less/engine/nodes/selector.rb +0 -44
  128. data/lib/less/ext.rb +0 -60
  129. data/spec/command_spec.rb +0 -102
  130. data/spec/css/accessors.css +0 -18
  131. data/spec/css/big.css +0 -3768
  132. data/spec/css/colors.css +0 -14
  133. data/spec/css/comments.css +0 -9
  134. data/spec/css/css-3.css +0 -21
  135. data/spec/css/css.css +0 -50
  136. data/spec/css/dash-prefix.css +0 -12
  137. data/spec/css/functions.css +0 -6
  138. data/spec/css/import-with-extra-paths.css +0 -8
  139. data/spec/css/import-with-partial-in-extra-path.css +0 -6
  140. data/spec/css/lazy-eval.css +0 -1
  141. data/spec/css/mixins-args.css +0 -32
  142. data/spec/css/mixins.css +0 -28
  143. data/spec/css/rulesets.css +0 -17
  144. data/spec/css/selectors.css +0 -13
  145. data/spec/css/strings.css +0 -12
  146. data/spec/css/variables.css +0 -8
  147. data/spec/css/whitespace.css +0 -7
  148. data/spec/engine_spec.rb +0 -127
  149. data/spec/less/accessors.less +0 -20
  150. data/spec/less/big.less +0 -1264
  151. data/spec/less/dash-prefix.less +0 -21
  152. data/spec/less/exceptions/mixed-units-error.less +0 -3
  153. data/spec/less/exceptions/name-error-1.0.less +0 -3
  154. data/spec/less/exceptions/syntax-error-1.0.less +0 -3
  155. data/spec/less/extra_import_path/extra.less +0 -1
  156. data/spec/less/extra_import_path/import/import-test-a.css +0 -1
  157. data/spec/less/extra_import_path/import/import-test-a.less +0 -4
  158. data/spec/less/functions.less +0 -6
  159. data/spec/less/hidden.less +0 -25
  160. data/spec/less/import-with-extra-paths.less +0 -4
  161. data/spec/less/literal-css.less +0 -11
  162. data/spec/less/mixins-args.less +0 -59
  163. data/spec/less/strings.less +0 -14
  164. data/spec/less/variables.less +0 -29
  165. data/spec/spec.css +0 -50
@@ -13,19 +13,23 @@
13
13
  }
14
14
  }
15
15
  }
16
- #theme > .mixin {
17
- background-color: grey;
16
+ #theme {
17
+ > .mixin {
18
+ background-color: grey;
19
+ }
18
20
  }
19
21
  #container {
20
22
  color: black;
21
- .mixin, .mixout;
23
+ .mixin;
24
+ .mixout;
22
25
  #theme > .mixin;
23
26
  }
24
27
 
25
28
  #header {
26
29
  .milk {
27
30
  color: white;
28
- .mixin, #theme > .mixin;
31
+ .mixin;
32
+ #theme > .mixin;
29
33
  }
30
34
  #cookie {
31
35
  .chips {
@@ -6,6 +6,8 @@
6
6
  height: 10px / 2px+6px-1px*2;
7
7
  width: 2 * 4-5em;
8
8
  }
9
+ substraction: 20 - 10 - 5 - 5; // 0
10
+ division: 20 / 5 / 4; // 1
9
11
  }
10
12
 
11
13
  @x: 4;
@@ -17,6 +19,12 @@
17
19
  size: 5cm - @x; // 1cm
18
20
  }
19
21
 
22
+ .with-functions {
23
+ color: rgb(200, 200, 200) / 2;
24
+ color: 2 * hsl(0, 50%, 50%);
25
+ color: rgb(10, 10, 10) + hsl(0, 50%, 50%);
26
+ }
27
+
20
28
  @z: -2;
21
29
 
22
30
  .negative {
@@ -37,3 +45,14 @@
37
45
  border-color: #333333 / 3 + #111; // #222222
38
46
  }
39
47
  }
48
+
49
+ .negations {
50
+ @var: 4px;
51
+ variable: -@var; // 4
52
+ variable1: -@var + @var; // 0
53
+ variable2: @var + -@var; // 0
54
+ variable3: @var - -@var; // 8
55
+ variable4: -@var - -@var; // 0
56
+ paren: -(@var); // -4px
57
+ paren2: -(2 + 2) * -@var; // 16
58
+ }
File without changes
@@ -2,7 +2,7 @@
2
2
  > #second .two > #deux {
3
3
  width: 50%;
4
4
  #third {
5
- :focus {
5
+ &:focus {
6
6
  color: black;
7
7
  #fifth {
8
8
  > #sixth {
@@ -27,4 +27,4 @@
27
27
  }
28
28
  }
29
29
  font-size: 2em;
30
- }
30
+ }
@@ -29,4 +29,4 @@
29
29
  background-color: @local; // white
30
30
  }
31
31
  }
32
- }
32
+ }
@@ -1,6 +1,6 @@
1
1
  h1, h2, h3 {
2
2
  a, p {
3
- :hover {
3
+ &:hover {
4
4
  color: red;
5
5
  }
6
6
  }
@@ -0,0 +1,49 @@
1
+ #strings {
2
+ background-image: url("http://son-of-a-banana.com");
3
+ quotes: "~" "~";
4
+ content: "#*%:&^,)!.(~*})";
5
+ empty: "";
6
+ brackets: "{" "}";
7
+ }
8
+ #comments {
9
+ content: "/* hello */ // not-so-secret";
10
+ }
11
+ #single-quote {
12
+ quotes: "'" "'";
13
+ content: '""#!&""';
14
+ empty: '';
15
+ semi-colon: ';';
16
+ }
17
+ #escaped {
18
+ filter: ~"DX.Transform.MS.BS.filter(opacity=50)";
19
+ }
20
+ #one-line { image: url(http://tooks.com) }
21
+ #crazy { image: url(http://), "}", url("http://}") }
22
+ #interpolation {
23
+ @var: '/dev';
24
+ url: "http://lesscss.org@{var}/image.jpg";
25
+
26
+ @var2: 256;
27
+ url2: "http://lesscss.org/image-@{var2}.jpg";
28
+
29
+ @var3: #456;
30
+ url3: "http://lesscss.org@{var3}";
31
+
32
+ @var4: hello;
33
+ url4: "http://lesscss.org/@{var4}";
34
+
35
+ @var5: 54.4px;
36
+ url5: "http://lesscss.org/@{var5}";
37
+ }
38
+
39
+ // multiple calls with string interpolation
40
+
41
+ .mix-mul (@a: green) {
42
+ color: ~"@{a}";
43
+ }
44
+ .mix-mul-class {
45
+ .mix-mul(blue);
46
+ .mix-mul(red);
47
+ .mix-mul(blue);
48
+ .mix-mul(orange);
49
+ }
@@ -0,0 +1,50 @@
1
+ @a: 2;
2
+ @x: @a * @a;
3
+ @y: @x + 1;
4
+ @z: @x * 2 + @y;
5
+
6
+ .variables {
7
+ width: @z + 1cm; // 14cm
8
+ }
9
+
10
+ @b: @a * 10;
11
+ @c: #888;
12
+
13
+ @fonts: "Trebuchet MS", Verdana, sans-serif;
14
+ @f: @fonts;
15
+
16
+ @quotes: "~" "~";
17
+ @q: @quotes;
18
+
19
+ .variables {
20
+ height: @b + @x + 0px; // 24px
21
+ color: @c;
22
+ font-family: @f;
23
+ quotes: @q;
24
+ }
25
+
26
+ .redefinition {
27
+ @var: 4;
28
+ @var: 2;
29
+ @var: 3;
30
+ three: @var;
31
+ }
32
+
33
+ .values {
34
+ @a: 'Trebuchet';
35
+ @multi: 'A', B, C;
36
+ font-family: @a, @a, @a;
37
+ color: @c !important;
38
+ url: url(@a);
39
+ multi: something @multi, @a;
40
+ }
41
+
42
+ .variable-names {
43
+ @var: 'hello';
44
+ @name: 'var';
45
+ name: @@name;
46
+ }
47
+ .alpha {
48
+ @var: 42;
49
+ filter: alpha(opacity=@var);
50
+ }
@@ -25,6 +25,9 @@
25
25
  }
26
26
  .no-semi-column {border: 2px solid white}
27
27
  .newlines {
28
+ background: the,
29
+ great,
30
+ wall;
28
31
  border: 2px
29
32
  solid
30
33
  black;
@@ -0,0 +1,67 @@
1
+
2
+ module Less
3
+ class Loader
4
+
5
+ def initialize
6
+ @cxt = V8::Context.new
7
+ @path = Pathname(__FILE__).dirname.join('js','lib')
8
+ @exports = {
9
+ "path" => Path.new,
10
+ "sys" => Sys.new,
11
+ "fs" => Fs.new
12
+ }
13
+ @process = Process.new
14
+ @cxt['console'] = Console.new
15
+ end
16
+
17
+ def require(path)
18
+ unless exports = @exports[path]
19
+ filename = path =~ /\.js$/ ? path : "#{path}.js"
20
+ filepath = @path.join(filename)
21
+ fail LoadError, "no such file: #{filename}" unless filepath.exist?
22
+ load = @cxt.eval("(function(process, require, exports, __dirname) {require.paths = [];#{File.read(filepath)}})", filepath.expand_path)
23
+ @exports[path] = exports = @cxt['Object'].new
24
+ load.call(@process, method(:require), exports, Dir.pwd)
25
+ end
26
+ return exports
27
+ end
28
+
29
+ class Path
30
+ def join(*components)
31
+ File.join(*components)
32
+ end
33
+
34
+ def dirname(path)
35
+ File.dirname(path)
36
+ end
37
+ end
38
+
39
+ class Sys
40
+ def error(*errors)
41
+ raise errors.join(' ')
42
+ end
43
+ end
44
+
45
+ class Fs
46
+ def statSync(path)
47
+ File.stat(path)
48
+ end
49
+
50
+ def readFile(path, encoding, callback)
51
+ callback.call(nil, File.read(path))
52
+ end
53
+
54
+ end
55
+
56
+ class Process
57
+ def exit(*args)
58
+ end
59
+ end
60
+
61
+ class Console
62
+ def log(*msgs)
63
+ puts msgs.join(',')
64
+ end
65
+ end
66
+ end
67
+ end
@@ -0,0 +1,46 @@
1
+
2
+ require 'v8'
3
+
4
+ module Less
5
+ class Parser
6
+
7
+ def initialize(options = {})
8
+ stringy = {}
9
+ options.each do |k,v|
10
+ stringy[k.to_s] = v.is_a?(Array) ? v.map(&:to_s) : v.to_s
11
+ end
12
+ @parser = Less.Parser.new(stringy)
13
+ end
14
+
15
+ def parse(less)
16
+ error,tree = nil
17
+ @parser.parse(less, lambda {|e, t| error = e; tree = t})
18
+ return Tree.new(tree) if tree
19
+ rescue V8::JSError => e
20
+ raise ParseError.new(e)
21
+ end
22
+
23
+ end
24
+
25
+ class Tree
26
+ def initialize(tree)
27
+ @tree = tree
28
+ end
29
+
30
+ def to_css(options = {})
31
+ @tree.toCSS(options)
32
+ end
33
+ end
34
+
35
+ class ParseError < StandardError
36
+
37
+ def initialize(error)
38
+ super(error.message)
39
+ @backtrace = error.backtrace
40
+ end
41
+
42
+ def backtrace
43
+ @backtrace
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,3 @@
1
+ module Less
2
+ VERSION = '2.0.0'
3
+ end
@@ -0,0 +1 @@
1
+ .one {width: 1;}
@@ -0,0 +1,30 @@
1
+ require 'spec_helper'
2
+
3
+ describe Less::Parser do
4
+
5
+ cwd = Pathname(__FILE__).dirname
6
+
7
+ describe "simple usage" do
8
+ it "parse less into a tree" do
9
+ root = subject.parse(".class {width: 1+1}")
10
+ root.to_css.gsub(/\n/,'').should eql ".class { width: 2;}"
11
+ end
12
+
13
+ it "accepts options when assembling the parse tree" do
14
+ subject.parse(".class {width: 1+1}").to_css(:compress => true).strip.should eql ".class{width:2;}"
15
+ end
16
+ end
17
+ it "throws a ParseError if the lesscss is bogus" do
18
+ expect {subject.parse('{^)')}.should raise_error(Less::ParseError)
19
+ end
20
+
21
+ describe "when configured with mulitple load paths" do
22
+ before {@parser = Less::Parser.new :paths => [cwd.join('one'), cwd.join('two')]}
23
+
24
+ it "will load files from both paths" do
25
+ @parser.parse('@import "one.less";').to_css.gsub(/\n/,'').strip.should eql ".one { width: 1;}"
26
+ @parser.parse('@import "two.less";').to_css.gsub(/\n/,'').strip.should eql ".two { width: 1;}"
27
+ end
28
+ end
29
+
30
+ end
@@ -0,0 +1 @@
1
+ .two {width: 1;}
data/spec/spec_helper.rb CHANGED
@@ -1,8 +1,3 @@
1
- require 'rubygems'
2
- require 'spec'
3
-
4
- $:.unshift File.join(File.dirname(__FILE__), '..', 'lib')
5
- $:.unshift File.dirname(__FILE__)
6
-
7
- require 'less'
1
+ $:.unshift Pathname(__FILE__).dirname.join('..','lib')
8
2
 
3
+ require 'less'
metadata CHANGED
@@ -1,158 +1,208 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: less
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.21
4
+ prerelease:
5
+ version: 2.0.0
5
6
  platform: ruby
6
7
  authors:
7
- - cloudhead
8
+ - Charles Lowell
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
12
 
12
- date: 2010-01-13 00:00:00 -05:00
13
- default_executable: lessc
13
+ date: 2011-06-02 00:00:00 -05:00
14
+ default_executable:
14
15
  dependencies:
15
16
  - !ruby/object:Gem::Dependency
16
- name: treetop
17
+ name: therubyracer
18
+ requirement: &id001 !ruby/object:Gem::Requirement
19
+ none: false
20
+ requirements:
21
+ - - ~>
22
+ - !ruby/object:Gem::Version
23
+ version: 0.9.0beta6
17
24
  type: :runtime
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
25
+ prerelease: false
26
+ version_requirements: *id001
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: &id002 !ruby/object:Gem::Requirement
30
+ none: false
20
31
  requirements:
21
- - - ">="
32
+ - - ~>
22
33
  - !ruby/object:Gem::Version
23
- version: 1.4.2
24
- version:
34
+ version: 0.9.1
35
+ type: :development
36
+ prerelease: false
37
+ version_requirements: *id002
25
38
  - !ruby/object:Gem::Dependency
26
- name: mutter
27
- type: :runtime
28
- version_requirement:
29
- version_requirements: !ruby/object:Gem::Requirement
39
+ name: rspec
40
+ requirement: &id003 !ruby/object:Gem::Requirement
41
+ none: false
30
42
  requirements:
31
- - - ">="
43
+ - - ~>
32
44
  - !ruby/object:Gem::Version
33
- version: 0.4.2
34
- version:
35
- description: LESS is leaner CSS
36
- email: self@cloudhead.net
45
+ version: "2.0"
46
+ type: :development
47
+ prerelease: false
48
+ version_requirements: *id003
49
+ description: Invoke the Less CSS compiler from Ruby (http://lesscss.org)
50
+ email:
51
+ - cowboyd@thefrontside.net
37
52
  executables:
38
53
  - lessc
39
54
  extensions: []
40
55
 
41
- extra_rdoc_files:
42
- - LICENSE
43
- - README.md
56
+ extra_rdoc_files: []
57
+
44
58
  files:
45
59
  - .gitignore
46
- - CHANGELOG
47
- - LICENSE
60
+ - .gitmodules
61
+ - Gemfile
48
62
  - README.md
49
63
  - Rakefile
50
- - VERSION
51
64
  - bin/lessc
52
65
  - less.gemspec
53
66
  - lib/less.rb
54
- - lib/less/command.rb
55
- - lib/less/engine.rb
56
- - lib/less/engine/grammar/common.tt
57
- - lib/less/engine/grammar/entity.tt
58
- - lib/less/engine/grammar/less.tt
59
- - lib/less/engine/nodes.rb
60
- - lib/less/engine/nodes/element.rb
61
- - lib/less/engine/nodes/entity.rb
62
- - lib/less/engine/nodes/function.rb
63
- - lib/less/engine/nodes/literal.rb
64
- - lib/less/engine/nodes/property.rb
65
- - lib/less/engine/nodes/ruleset.rb
66
- - lib/less/engine/nodes/selector.rb
67
- - lib/less/ext.rb
68
- - spec/command_spec.rb
69
- - spec/css/accessors.css
70
- - spec/css/big.css
71
- - spec/css/colors.css
72
- - spec/css/comments.css
73
- - spec/css/css-3.css
74
- - spec/css/css.css
75
- - spec/css/dash-prefix.css
76
- - spec/css/functions.css
77
- - spec/css/import-with-extra-paths.css
78
- - spec/css/import-with-partial-in-extra-path.css
79
- - spec/css/import.css
80
- - spec/css/lazy-eval.css
81
- - spec/css/mixins-args.css
82
- - spec/css/mixins.css
83
- - spec/css/operations.css
84
- - spec/css/parens.css
85
- - spec/css/rulesets.css
86
- - spec/css/scope.css
87
- - spec/css/selectors.css
88
- - spec/css/strings.css
89
- - spec/css/variables.css
90
- - spec/css/whitespace.css
91
- - spec/engine_spec.rb
92
- - spec/less/accessors.less
93
- - spec/less/big.less
94
- - spec/less/colors.less
95
- - spec/less/comments.less
96
- - spec/less/css-3.less
97
- - spec/less/css.less
98
- - spec/less/dash-prefix.less
99
- - spec/less/exceptions/mixed-units-error.less
100
- - spec/less/exceptions/name-error-1.0.less
101
- - spec/less/exceptions/syntax-error-1.0.less
102
- - spec/less/extra_import_path/extra.less
103
- - spec/less/extra_import_path/import/import-test-a.css
104
- - spec/less/extra_import_path/import/import-test-a.less
105
- - spec/less/functions.less
106
- - spec/less/hidden.less
107
- - spec/less/import-with-extra-paths.less
108
- - spec/less/import.less
109
- - spec/less/import/import-test-a.less
110
- - spec/less/import/import-test-b.less
111
- - spec/less/import/import-test-c.less
112
- - spec/less/import/import-test-d.css
113
- - spec/less/lazy-eval.less
114
- - spec/less/literal-css.less
115
- - spec/less/mixins-args.less
116
- - spec/less/mixins.less
117
- - spec/less/operations.less
118
- - spec/less/parens.less
119
- - spec/less/rulesets.less
120
- - spec/less/scope.less
121
- - spec/less/selectors.less
122
- - spec/less/strings.less
123
- - spec/less/variables.less
124
- - spec/less/whitespace.less
125
- - spec/spec.css
67
+ - lib/less/loader.rb
68
+ - lib/less/parser.rb
69
+ - lib/less/version.rb
70
+ - spec/less/one/one.less
71
+ - spec/less/parser_spec.rb
72
+ - spec/less/two/two.less
126
73
  - spec/spec_helper.rb
74
+ - lib/less/js/LICENSE
75
+ - lib/less/js/Makefile
76
+ - lib/less/js/README.md
77
+ - lib/less/js/benchmark/benchmark.less
78
+ - lib/less/js/benchmark/less-benchmark.js
79
+ - lib/less/js/bin/lessc
80
+ - lib/less/js/build/ecma-5.js
81
+ - lib/less/js/build/header.js
82
+ - lib/less/js/build/require.js
83
+ - lib/less/js/dist/less-1.0.44.js
84
+ - lib/less/js/dist/less-1.1.0.js
85
+ - lib/less/js/dist/less-1.1.0.min.js
86
+ - lib/less/js/dist/less-1.1.1.js
87
+ - lib/less/js/dist/less-1.1.1.min.js
88
+ - lib/less/js/dist/less-1.1.2.js
89
+ - lib/less/js/dist/less-1.1.2.min.js
90
+ - lib/less/js/dist/less-1.1.3.js
91
+ - lib/less/js/dist/less-1.1.3.min.js
92
+ - lib/less/js/lib/less/browser.js
93
+ - lib/less/js/lib/less/functions.js
94
+ - lib/less/js/lib/less/index.js
95
+ - lib/less/js/lib/less/parser.js
96
+ - lib/less/js/lib/less/tree.js
97
+ - lib/less/js/lib/less/tree/alpha.js
98
+ - lib/less/js/lib/less/tree/anonymous.js
99
+ - lib/less/js/lib/less/tree/call.js
100
+ - lib/less/js/lib/less/tree/color.js
101
+ - lib/less/js/lib/less/tree/comment.js
102
+ - lib/less/js/lib/less/tree/dimension.js
103
+ - lib/less/js/lib/less/tree/directive.js
104
+ - lib/less/js/lib/less/tree/element.js
105
+ - lib/less/js/lib/less/tree/expression.js
106
+ - lib/less/js/lib/less/tree/import.js
107
+ - lib/less/js/lib/less/tree/javascript.js
108
+ - lib/less/js/lib/less/tree/keyword.js
109
+ - lib/less/js/lib/less/tree/mixin.js
110
+ - lib/less/js/lib/less/tree/operation.js
111
+ - lib/less/js/lib/less/tree/quoted.js
112
+ - lib/less/js/lib/less/tree/rule.js
113
+ - lib/less/js/lib/less/tree/ruleset.js
114
+ - lib/less/js/lib/less/tree/selector.js
115
+ - lib/less/js/lib/less/tree/url.js
116
+ - lib/less/js/lib/less/tree/value.js
117
+ - lib/less/js/lib/less/tree/variable.js
118
+ - lib/less/js/package.json
119
+ - lib/less/js/test/css/colors.css
120
+ - lib/less/js/test/css/comments.css
121
+ - lib/less/js/test/css/css-3.css
122
+ - lib/less/js/test/css/css-escapes.css
123
+ - lib/less/js/test/css/css.css
124
+ - lib/less/js/test/css/functions.css
125
+ - lib/less/js/test/css/import.css
126
+ - lib/less/js/test/css/javascript.css
127
+ - lib/less/js/test/css/lazy-eval.css
128
+ - lib/less/js/test/css/media.css
129
+ - lib/less/js/test/css/mixins-args.css
130
+ - lib/less/js/test/css/mixins-closure.css
131
+ - lib/less/js/test/css/mixins-nested.css
132
+ - lib/less/js/test/css/mixins-pattern.css
133
+ - lib/less/js/test/css/mixins.css
134
+ - lib/less/js/test/css/operations.css
135
+ - lib/less/js/test/css/parens.css
136
+ - lib/less/js/test/css/rulesets.css
137
+ - lib/less/js/test/css/scope.css
138
+ - lib/less/js/test/css/selectors.css
139
+ - lib/less/js/test/css/strings.css
140
+ - lib/less/js/test/css/variables.css
141
+ - lib/less/js/test/css/whitespace.css
142
+ - lib/less/js/test/less-test.js
143
+ - lib/less/js/test/less/colors.less
144
+ - lib/less/js/test/less/comments.less
145
+ - lib/less/js/test/less/css-3.less
146
+ - lib/less/js/test/less/css-escapes.less
147
+ - lib/less/js/test/less/css.less
148
+ - lib/less/js/test/less/functions.less
149
+ - lib/less/js/test/less/import.less
150
+ - lib/less/js/test/less/import/import-test-a.less
151
+ - lib/less/js/test/less/import/import-test-b.less
152
+ - lib/less/js/test/less/import/import-test-c.less
153
+ - lib/less/js/test/less/import/import-test-d.css
154
+ - lib/less/js/test/less/javascript.less
155
+ - lib/less/js/test/less/lazy-eval.less
156
+ - lib/less/js/test/less/media.less
157
+ - lib/less/js/test/less/mixins-args.less
158
+ - lib/less/js/test/less/mixins-closure.less
159
+ - lib/less/js/test/less/mixins-nested.less
160
+ - lib/less/js/test/less/mixins-pattern.less
161
+ - lib/less/js/test/less/mixins.less
162
+ - lib/less/js/test/less/operations.less
163
+ - lib/less/js/test/less/parens.less
164
+ - lib/less/js/test/less/rulesets.less
165
+ - lib/less/js/test/less/scope.less
166
+ - lib/less/js/test/less/selectors.less
167
+ - lib/less/js/test/less/strings.less
168
+ - lib/less/js/test/less/variables.less
169
+ - lib/less/js/test/less/whitespace.less
127
170
  has_rdoc: true
128
- homepage: http://www.lesscss.org
171
+ homepage: http://github.com/cowboyd/less.rb
129
172
  licenses: []
130
173
 
131
174
  post_install_message:
132
- rdoc_options:
133
- - --charset=UTF-8
175
+ rdoc_options: []
176
+
134
177
  require_paths:
135
178
  - lib
136
179
  required_ruby_version: !ruby/object:Gem::Requirement
180
+ none: false
137
181
  requirements:
138
182
  - - ">="
139
183
  - !ruby/object:Gem::Version
184
+ hash: -771420708619393644
185
+ segments:
186
+ - 0
140
187
  version: "0"
141
- version:
142
188
  required_rubygems_version: !ruby/object:Gem::Requirement
189
+ none: false
143
190
  requirements:
144
191
  - - ">="
145
192
  - !ruby/object:Gem::Version
193
+ hash: -771420708619393644
194
+ segments:
195
+ - 0
146
196
  version: "0"
147
- version:
148
197
  requirements: []
149
198
 
150
199
  rubyforge_project: less
151
- rubygems_version: 1.3.5
200
+ rubygems_version: 1.6.2
152
201
  signing_key:
153
202
  specification_version: 3
154
- summary: LESS compiler
203
+ summary: Leaner CSS, in your browser or Ruby (via less.js)
155
204
  test_files:
156
- - spec/command_spec.rb
157
- - spec/engine_spec.rb
205
+ - spec/less/one/one.less
206
+ - spec/less/parser_spec.rb
207
+ - spec/less/two/two.less
158
208
  - spec/spec_helper.rb