less 2.2.1 → 2.2.2
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitmodules +1 -1
- data/bin/lessc +94 -17
- data/lib/less.rb +7 -0
- data/lib/less/parser.rb +10 -6
- data/lib/less/version.rb +1 -1
- data/spec/less/parser_spec.rb +76 -8
- metadata +154 -272
data/.gitmodules
CHANGED
data/bin/lessc
CHANGED
@@ -2,23 +2,100 @@
|
|
2
2
|
|
3
3
|
require 'less'
|
4
4
|
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
5
|
+
compress = false
|
6
|
+
yuicompress = false
|
7
|
+
|
8
|
+
options = {
|
9
|
+
:paths => [],
|
10
|
+
:strictImports => false,
|
11
|
+
:silent => false,
|
12
|
+
:optimization => 1
|
13
|
+
}
|
14
|
+
|
15
|
+
output = nil
|
16
|
+
|
17
|
+
require 'optparse'
|
18
|
+
|
19
|
+
opts = OptionParser.new do |opts|
|
20
|
+
opts.banner = 'Usage: lessc [options] [INPUT]'
|
21
|
+
|
22
|
+
opts.on('-h', '--help', 'print this help') do
|
23
|
+
puts opts
|
24
|
+
exit
|
25
|
+
end
|
26
|
+
|
27
|
+
opts.on('-v', '--version', 'print version') do
|
28
|
+
puts("lessc #{Less['version'].join('.')} (LESS Compiler) [Ruby] #{Less::VERSION}")
|
29
|
+
exit(0)
|
30
|
+
end
|
31
|
+
|
32
|
+
opts.on('-s', '--silent') do
|
33
|
+
options[:silent] = true
|
34
|
+
end
|
35
|
+
|
36
|
+
opts.on('--strict-imports') do
|
37
|
+
options[:strictImports] = true
|
38
|
+
end
|
39
|
+
|
40
|
+
opts.on('-x', '--compress') do
|
41
|
+
compress = true
|
42
|
+
end
|
43
|
+
|
44
|
+
opts.on('--yui-compress') do
|
45
|
+
yuicompress = true
|
46
|
+
end
|
47
|
+
|
48
|
+
opts.on('--no-color') do
|
49
|
+
options[:color] = false
|
50
|
+
end
|
51
|
+
|
52
|
+
require 'rbconfig'
|
53
|
+
is_windows = (RbConfig::CONFIG['host_os'] =~ /mswin|mingw|cygwin/)
|
54
|
+
separator = is_windows ? ';' : ':'
|
55
|
+
opts.on('--paths', '--include-path',
|
56
|
+
"paths to include separated by '#{separator}'") do |paths|
|
57
|
+
paths = paths.split(separator).map do |path|
|
58
|
+
path.empty? ? nil : File.expand_path(path)
|
59
|
+
end
|
60
|
+
options[:paths] = paths.compact
|
61
|
+
end
|
62
|
+
|
63
|
+
# NOTE: not present in JS version, has: --00, --01 and --02
|
64
|
+
opts.on('--optimization [0, 1 or 2]', "default: 1") do |num|
|
65
|
+
options[:optimization] = (num || 1).to_i
|
66
|
+
end
|
67
|
+
|
68
|
+
[0, 1, 2].each do |num| # --00 --01 --02
|
69
|
+
opts.on("--0#{num}", "optimization: #{num}") do
|
70
|
+
options[:optimization] = num
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
74
|
+
# NOTE: not present in JS version, does [INPUT] [OUTPUT]
|
75
|
+
#opts.on('--output file', "specify an output path") do |path|
|
76
|
+
# output = File.expand_path(path)
|
77
|
+
#end
|
78
|
+
|
79
|
+
end
|
80
|
+
|
81
|
+
opts.parse! ARGV
|
82
|
+
|
83
|
+
if ARGV.empty?
|
84
|
+
puts("lessc: no input files")
|
85
|
+
exit(1)
|
13
86
|
end
|
14
87
|
|
15
|
-
|
16
|
-
|
17
|
-
help
|
18
|
-
else
|
19
|
-
# Well, lets read those files
|
20
|
-
doc = ARGF.read
|
21
|
-
parser = Less::Parser.new
|
22
|
-
tree = parser.parse(doc)
|
23
|
-
puts tree.to_css(:compress => true)
|
88
|
+
if ARGV.size == 1
|
89
|
+
options[:filename] = ARGV.first
|
24
90
|
end
|
91
|
+
|
92
|
+
ARGV.each do |path|
|
93
|
+
options[:paths].unshift File.dirname(path)
|
94
|
+
end
|
95
|
+
options[:paths].uniq!
|
96
|
+
|
97
|
+
parser = Less::Parser.new(options)
|
98
|
+
tree = parser.parse(ARGF.read)
|
99
|
+
css = tree.to_css(:compress => compress, :yuicompress => yuicompress)
|
100
|
+
|
101
|
+
puts css # we do not support [INPUT] [OUTPUT] as the JS version does
|
data/lib/less.rb
CHANGED
@@ -18,8 +18,15 @@ module Less
|
|
18
18
|
@less[name]
|
19
19
|
end
|
20
20
|
|
21
|
+
# exposes less.Parser
|
21
22
|
def self.Parser
|
22
23
|
self['Parser']
|
23
24
|
end
|
24
25
|
|
26
|
+
# exposes less.tree e.g. for attaching custom functions
|
27
|
+
# Less.tree.functions['foo'] = lambda { |*args| 'bar' }
|
28
|
+
def self.tree
|
29
|
+
self['tree']
|
30
|
+
end
|
31
|
+
|
25
32
|
end
|
data/lib/less/parser.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
module Less
|
2
|
-
|
2
|
+
|
3
3
|
# Convert lesscss source into an abstract syntax Tree
|
4
4
|
class Parser
|
5
5
|
|
@@ -37,9 +37,13 @@ module Less
|
|
37
37
|
end
|
38
38
|
Tree.new(tree) if tree
|
39
39
|
end
|
40
|
-
|
40
|
+
|
41
|
+
def imports
|
42
|
+
Less::JavaScript.exec { @parser.imports.files.map{|file, _| file} }
|
43
|
+
end
|
44
|
+
|
41
45
|
private
|
42
|
-
|
46
|
+
|
43
47
|
# Abstract LessCSS syntax tree Less. Mainly used to emit CSS
|
44
48
|
class Tree
|
45
49
|
|
@@ -56,9 +60,9 @@ module Less
|
|
56
60
|
def to_css(options = {})
|
57
61
|
Less::JavaScript.exec { @tree.toCSS(options) }
|
58
62
|
end
|
59
|
-
|
63
|
+
|
60
64
|
end
|
61
|
-
|
65
|
+
|
62
66
|
end
|
63
|
-
|
67
|
+
|
64
68
|
end
|
data/lib/less/version.rb
CHANGED
data/spec/less/parser_spec.rb
CHANGED
@@ -3,11 +3,11 @@ require 'spec_helper'
|
|
3
3
|
describe Less::Parser do
|
4
4
|
|
5
5
|
cwd = Pathname(__FILE__).dirname
|
6
|
-
|
6
|
+
|
7
7
|
it "instantiates" do
|
8
|
-
|
8
|
+
lambda { Less::Parser.new }.should_not raise_error
|
9
9
|
end
|
10
|
-
|
10
|
+
|
11
11
|
describe "simple usage" do
|
12
12
|
it "parse less into a tree" do
|
13
13
|
root = subject.parse(".class {width: 1+1}")
|
@@ -20,15 +20,15 @@ describe Less::Parser do
|
|
20
20
|
end
|
21
21
|
|
22
22
|
it "throws a ParseError if the lesscss is bogus" do
|
23
|
-
|
23
|
+
lambda { subject.parse('{^)') }.should raise_error(Less::ParseError, /missing closing `\}`/)
|
24
24
|
end
|
25
25
|
|
26
26
|
it "passes exceptions from the less compiler" do
|
27
|
-
|
27
|
+
lambda { subject.parse('body { color: @a; }').to_css }.should raise_error(Less::ParseError, /variable @a is undefined/)
|
28
28
|
end
|
29
29
|
|
30
30
|
describe "when configured with multiple load paths" do
|
31
|
-
subject { Less::Parser.new :paths => [ cwd.join('one'), cwd.join('two'), cwd.join('faulty') ] }
|
31
|
+
subject { Less::Parser.new :paths => [ cwd.join('one'), cwd.join('two'), cwd.join('faulty') ] }
|
32
32
|
|
33
33
|
it "will load files from both paths" do
|
34
34
|
subject.parse('@import "one.less";').to_css.gsub(/\n/,'').strip.should eql ".one { width: 1;}"
|
@@ -36,7 +36,14 @@ describe Less::Parser do
|
|
36
36
|
end
|
37
37
|
|
38
38
|
it "passes exceptions from less imported less files" do
|
39
|
-
|
39
|
+
lambda { subject.parse('@import "faulty.less";').to_css }.should raise_error(Less::ParseError, /variable @a is undefined/)
|
40
|
+
end
|
41
|
+
|
42
|
+
it "will track imported files" do
|
43
|
+
subject.parse('@import "one.less";')
|
44
|
+
subject.parse('@import "two.less";')
|
45
|
+
subject.imports.should include("one.less")
|
46
|
+
subject.imports.should include("two.less")
|
40
47
|
end
|
41
48
|
|
42
49
|
it "reports type, line, column and filename of (parse) error" do
|
@@ -51,7 +58,7 @@ describe Less::Parser do
|
|
51
58
|
fail "parse error not raised"
|
52
59
|
end
|
53
60
|
end
|
54
|
-
|
61
|
+
|
55
62
|
end
|
56
63
|
|
57
64
|
describe "when load paths are specified in as default options" do
|
@@ -70,4 +77,65 @@ describe Less::Parser do
|
|
70
77
|
end
|
71
78
|
end
|
72
79
|
|
80
|
+
# NOTE: runs JS tests from less.js it's a replacement for less-test.js
|
81
|
+
describe "less-test", :integration => true do
|
82
|
+
|
83
|
+
TEST_LESS_DIR = File.expand_path('../../lib/less/js/test/less', File.dirname(__FILE__))
|
84
|
+
TEST_CSS_DIR = File.expand_path('../../lib/less/js/test/css' , File.dirname(__FILE__))
|
85
|
+
|
86
|
+
before :all do
|
87
|
+
# functions.less test expects these exposed :
|
88
|
+
Less.tree.functions[:add] = lambda do |*args| # function (a, b)
|
89
|
+
a, b = args[-2], args[-1]
|
90
|
+
Less.tree['Dimension'].new(a['value'] + b['value'])
|
91
|
+
# return new(less.tree.Dimension)(a.value + b.value);
|
92
|
+
end
|
93
|
+
Less.tree.functions[:increment] = lambda do |*args| # function (a)
|
94
|
+
a = args[-1]
|
95
|
+
Less.tree['Dimension'].new(a['value'] + 1)
|
96
|
+
# return new(less.tree.Dimension)(a.value + 1);
|
97
|
+
end
|
98
|
+
Less.tree.functions[:_color] = lambda do |*args| # function (str)
|
99
|
+
str = args[-1]
|
100
|
+
if str.value == 'evil red'
|
101
|
+
# if (str.value === "evil red")
|
102
|
+
Less.tree['Color'].new('600')
|
103
|
+
# return new(less.tree.Color)("600")
|
104
|
+
end
|
105
|
+
end
|
106
|
+
end
|
107
|
+
|
108
|
+
after :all do
|
109
|
+
Less.tree.functions[:add] = nil
|
110
|
+
Less.tree.functions[:increment] = nil
|
111
|
+
Less.tree.functions[:_color] = nil
|
112
|
+
end
|
113
|
+
|
114
|
+
Dir.glob(File.join(TEST_LESS_DIR, '*.less')).each do |less_file|
|
115
|
+
|
116
|
+
base_name = File.basename(less_file, '.less')
|
117
|
+
css_file = File.join(TEST_CSS_DIR, "#{base_name}.css")
|
118
|
+
raise "missing css file: #{css_file}" unless File.exists?(css_file)
|
119
|
+
|
120
|
+
less_content = File.read(less_file)
|
121
|
+
case base_name
|
122
|
+
when 'javascript'
|
123
|
+
# adjust less .eval line :
|
124
|
+
# title: `process.title`;
|
125
|
+
# later replaced by line :
|
126
|
+
# title: `typeof process.title`;
|
127
|
+
# with something that won't fail (since we're not in Node.JS)
|
128
|
+
less_content.sub!('process.title', '"node"')
|
129
|
+
end
|
130
|
+
|
131
|
+
it "#{base_name}.less" do
|
132
|
+
parser = Less::Parser.new(:paths => [ File.dirname(less_file) ])
|
133
|
+
less = parser.parse( less_content )
|
134
|
+
less.to_css.should == File.read(css_file)
|
135
|
+
end
|
136
|
+
|
137
|
+
end
|
138
|
+
|
139
|
+
end
|
140
|
+
|
73
141
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: less
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
4
|
+
version: 2.2.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-04
|
12
|
+
date: 2012-09-04 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: commonjs
|
16
|
-
requirement:
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,15 @@ dependencies:
|
|
21
21
|
version: 0.2.6
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ~>
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 0.2.6
|
25
30
|
- !ruby/object:Gem::Dependency
|
26
31
|
name: rake
|
27
|
-
requirement:
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
28
33
|
none: false
|
29
34
|
requirements:
|
30
35
|
- - ! '>='
|
@@ -32,10 +37,15 @@ dependencies:
|
|
32
37
|
version: '0'
|
33
38
|
type: :development
|
34
39
|
prerelease: false
|
35
|
-
version_requirements:
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
36
46
|
- !ruby/object:Gem::Dependency
|
37
47
|
name: rspec
|
38
|
-
requirement:
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
39
49
|
none: false
|
40
50
|
requirements:
|
41
51
|
- - ~>
|
@@ -43,7 +53,12 @@ dependencies:
|
|
43
53
|
version: '2.0'
|
44
54
|
type: :development
|
45
55
|
prerelease: false
|
46
|
-
version_requirements:
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ~>
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '2.0'
|
47
62
|
description: Invoke the Less CSS compiler from Ruby
|
48
63
|
email:
|
49
64
|
- cowboyd@thefrontside.net
|
@@ -74,267 +89,134 @@ files:
|
|
74
89
|
- spec/less/parser_spec.rb
|
75
90
|
- spec/less/two/two.less
|
76
91
|
- spec/spec_helper.rb
|
77
|
-
-
|
78
|
-
|
79
|
-
-
|
80
|
-
|
81
|
-
-
|
82
|
-
|
83
|
-
-
|
84
|
-
|
85
|
-
-
|
86
|
-
|
87
|
-
-
|
88
|
-
|
89
|
-
-
|
90
|
-
|
91
|
-
-
|
92
|
-
|
93
|
-
-
|
94
|
-
|
95
|
-
-
|
96
|
-
|
97
|
-
-
|
98
|
-
|
99
|
-
-
|
100
|
-
|
101
|
-
-
|
102
|
-
|
103
|
-
-
|
104
|
-
|
105
|
-
-
|
106
|
-
|
107
|
-
-
|
108
|
-
|
109
|
-
-
|
110
|
-
|
111
|
-
-
|
112
|
-
|
113
|
-
-
|
114
|
-
|
115
|
-
-
|
116
|
-
|
117
|
-
-
|
118
|
-
|
119
|
-
-
|
120
|
-
|
121
|
-
-
|
122
|
-
|
123
|
-
-
|
124
|
-
|
125
|
-
-
|
126
|
-
|
127
|
-
-
|
128
|
-
|
129
|
-
-
|
130
|
-
|
131
|
-
-
|
132
|
-
|
133
|
-
-
|
134
|
-
|
135
|
-
-
|
136
|
-
|
137
|
-
-
|
138
|
-
|
139
|
-
-
|
140
|
-
|
141
|
-
-
|
142
|
-
|
143
|
-
-
|
144
|
-
|
145
|
-
-
|
146
|
-
|
147
|
-
-
|
148
|
-
|
149
|
-
-
|
150
|
-
|
151
|
-
-
|
152
|
-
|
153
|
-
-
|
154
|
-
|
155
|
-
-
|
156
|
-
|
157
|
-
-
|
158
|
-
|
159
|
-
-
|
160
|
-
|
161
|
-
-
|
162
|
-
|
163
|
-
-
|
164
|
-
|
165
|
-
-
|
166
|
-
|
167
|
-
-
|
168
|
-
|
169
|
-
-
|
170
|
-
|
171
|
-
-
|
172
|
-
|
173
|
-
-
|
174
|
-
|
175
|
-
-
|
176
|
-
|
177
|
-
-
|
178
|
-
|
179
|
-
-
|
180
|
-
|
181
|
-
-
|
182
|
-
|
183
|
-
-
|
184
|
-
|
185
|
-
-
|
186
|
-
|
187
|
-
-
|
188
|
-
|
189
|
-
-
|
190
|
-
|
191
|
-
-
|
192
|
-
|
193
|
-
-
|
194
|
-
|
195
|
-
-
|
196
|
-
|
197
|
-
-
|
198
|
-
|
199
|
-
-
|
200
|
-
|
201
|
-
-
|
202
|
-
|
203
|
-
-
|
204
|
-
|
205
|
-
- !binary |-
|
206
|
-
bGliL2xlc3MvanMvbGliL2xlc3MvdHJlZS9ydWxlc2V0Lmpz
|
207
|
-
- !binary |-
|
208
|
-
bGliL2xlc3MvanMvbGliL2xlc3MvdHJlZS9zZWxlY3Rvci5qcw==
|
209
|
-
- !binary |-
|
210
|
-
bGliL2xlc3MvanMvbGliL2xlc3MvdHJlZS91cmwuanM=
|
211
|
-
- !binary |-
|
212
|
-
bGliL2xlc3MvanMvbGliL2xlc3MvdHJlZS92YWx1ZS5qcw==
|
213
|
-
- !binary |-
|
214
|
-
bGliL2xlc3MvanMvbGliL2xlc3MvdHJlZS92YXJpYWJsZS5qcw==
|
215
|
-
- !binary |-
|
216
|
-
bGliL2xlc3MvanMvcGFja2FnZS5qc29u
|
217
|
-
- !binary |-
|
218
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvY29sb3JzLmNzcw==
|
219
|
-
- !binary |-
|
220
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvY29tbWVudHMuY3Nz
|
221
|
-
- !binary |-
|
222
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvY3NzLTMuY3Nz
|
223
|
-
- !binary |-
|
224
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvY3NzLWVzY2FwZXMuY3Nz
|
225
|
-
- !binary |-
|
226
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvY3NzLmNzcw==
|
227
|
-
- !binary |-
|
228
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvZnVuY3Rpb25zLmNzcw==
|
229
|
-
- !binary |-
|
230
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvaWUtZmlsdGVycy5jc3M=
|
231
|
-
- !binary |-
|
232
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvaW1wb3J0LmNzcw==
|
233
|
-
- !binary |-
|
234
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvamF2YXNjcmlwdC5jc3M=
|
235
|
-
- !binary |-
|
236
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvbGF6eS1ldmFsLmNzcw==
|
237
|
-
- !binary |-
|
238
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvbWVkaWEuY3Nz
|
239
|
-
- !binary |-
|
240
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvbWl4aW5zLWFyZ3MuY3Nz
|
241
|
-
- !binary |-
|
242
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvbWl4aW5zLWNsb3N1cmUuY3Nz
|
243
|
-
- !binary |-
|
244
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvbWl4aW5zLWd1YXJkcy5jc3M=
|
245
|
-
- !binary |-
|
246
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvbWl4aW5zLWltcG9ydGFudC5jc3M=
|
247
|
-
- !binary |-
|
248
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvbWl4aW5zLW5lc3RlZC5jc3M=
|
249
|
-
- !binary |-
|
250
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvbWl4aW5zLXBhdHRlcm4uY3Nz
|
251
|
-
- !binary |-
|
252
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvbWl4aW5zLmNzcw==
|
253
|
-
- !binary |-
|
254
|
-
bGliL2xlc3MvanMvdGVzdC9jc3Mvb3BlcmF0aW9ucy5jc3M=
|
255
|
-
- !binary |-
|
256
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvcGFyZW5zLmNzcw==
|
257
|
-
- !binary |-
|
258
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvcnVsZXNldHMuY3Nz
|
259
|
-
- !binary |-
|
260
|
-
bGliL2xlc3MvanMvdGVzdC9jc3Mvc2NvcGUuY3Nz
|
261
|
-
- !binary |-
|
262
|
-
bGliL2xlc3MvanMvdGVzdC9jc3Mvc2VsZWN0b3JzLmNzcw==
|
263
|
-
- !binary |-
|
264
|
-
bGliL2xlc3MvanMvdGVzdC9jc3Mvc3RyaW5ncy5jc3M=
|
265
|
-
- !binary |-
|
266
|
-
bGliL2xlc3MvanMvdGVzdC9jc3MvdmFyaWFibGVzLmNzcw==
|
267
|
-
- !binary |-
|
268
|
-
bGliL2xlc3MvanMvdGVzdC9jc3Mvd2hpdGVzcGFjZS5jc3M=
|
269
|
-
- !binary |-
|
270
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzLXRlc3QuanM=
|
271
|
-
- !binary |-
|
272
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL2NvbG9ycy5sZXNz
|
273
|
-
- !binary |-
|
274
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL2NvbW1lbnRzLmxlc3M=
|
275
|
-
- !binary |-
|
276
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL2Nzcy0zLmxlc3M=
|
277
|
-
- !binary |-
|
278
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL2Nzcy1lc2NhcGVzLmxlc3M=
|
279
|
-
- !binary |-
|
280
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL2Nzcy5sZXNz
|
281
|
-
- !binary |-
|
282
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL2Z1bmN0aW9ucy5sZXNz
|
283
|
-
- !binary |-
|
284
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL2llLWZpbHRlcnMubGVzcw==
|
285
|
-
- !binary |-
|
286
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL2ltcG9ydC5sZXNz
|
287
|
-
- !binary |-
|
288
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL2ltcG9ydC9pbXBvcnQtdGVzdC1hLmxl
|
289
|
-
c3M=
|
290
|
-
- !binary |-
|
291
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL2ltcG9ydC9pbXBvcnQtdGVzdC1iLmxl
|
292
|
-
c3M=
|
293
|
-
- !binary |-
|
294
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL2ltcG9ydC9pbXBvcnQtdGVzdC1jLmxl
|
295
|
-
c3M=
|
296
|
-
- !binary |-
|
297
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL2ltcG9ydC9pbXBvcnQtdGVzdC1kLmNz
|
298
|
-
cw==
|
299
|
-
- !binary |-
|
300
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL2ltcG9ydC9pbXBvcnQtdGVzdC1lLmxl
|
301
|
-
c3M=
|
302
|
-
- !binary |-
|
303
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL2phdmFzY3JpcHQubGVzcw==
|
304
|
-
- !binary |-
|
305
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL2xhenktZXZhbC5sZXNz
|
306
|
-
- !binary |-
|
307
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL21lZGlhLmxlc3M=
|
308
|
-
- !binary |-
|
309
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL21peGlucy1hcmdzLmxlc3M=
|
310
|
-
- !binary |-
|
311
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL21peGlucy1jbG9zdXJlLmxlc3M=
|
312
|
-
- !binary |-
|
313
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL21peGlucy1ndWFyZHMubGVzcw==
|
314
|
-
- !binary |-
|
315
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL21peGlucy1pbXBvcnRhbnQubGVzcw==
|
316
|
-
- !binary |-
|
317
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL21peGlucy1uZXN0ZWQubGVzcw==
|
318
|
-
- !binary |-
|
319
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL21peGlucy1wYXR0ZXJuLmxlc3M=
|
320
|
-
- !binary |-
|
321
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL21peGlucy5sZXNz
|
322
|
-
- !binary |-
|
323
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL29wZXJhdGlvbnMubGVzcw==
|
324
|
-
- !binary |-
|
325
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL3BhcmVucy5sZXNz
|
326
|
-
- !binary |-
|
327
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL3J1bGVzZXRzLmxlc3M=
|
328
|
-
- !binary |-
|
329
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL3Njb3BlLmxlc3M=
|
330
|
-
- !binary |-
|
331
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL3NlbGVjdG9ycy5sZXNz
|
332
|
-
- !binary |-
|
333
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL3N0cmluZ3MubGVzcw==
|
334
|
-
- !binary |-
|
335
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL3ZhcmlhYmxlcy5sZXNz
|
336
|
-
- !binary |-
|
337
|
-
bGliL2xlc3MvanMvdGVzdC9sZXNzL3doaXRlc3BhY2UubGVzcw==
|
92
|
+
- lib/less/js/CHANGELOG
|
93
|
+
- lib/less/js/LICENSE
|
94
|
+
- lib/less/js/Makefile
|
95
|
+
- lib/less/js/README.md
|
96
|
+
- lib/less/js/benchmark/benchmark.less
|
97
|
+
- lib/less/js/benchmark/less-benchmark.js
|
98
|
+
- lib/less/js/bin/lessc
|
99
|
+
- lib/less/js/build/amd.js
|
100
|
+
- lib/less/js/build/ecma-5.js
|
101
|
+
- lib/less/js/build/header.js
|
102
|
+
- lib/less/js/build/require-rhino.js
|
103
|
+
- lib/less/js/build/require.js
|
104
|
+
- lib/less/js/dist/less-1.1.0.js
|
105
|
+
- lib/less/js/dist/less-1.1.0.min.js
|
106
|
+
- lib/less/js/dist/less-1.1.1.js
|
107
|
+
- lib/less/js/dist/less-1.1.1.min.js
|
108
|
+
- lib/less/js/dist/less-1.1.2.js
|
109
|
+
- lib/less/js/dist/less-1.1.2.min.js
|
110
|
+
- lib/less/js/dist/less-1.1.3.js
|
111
|
+
- lib/less/js/dist/less-1.1.3.min.js
|
112
|
+
- lib/less/js/dist/less-1.1.4.js
|
113
|
+
- lib/less/js/dist/less-1.1.4.min.js
|
114
|
+
- lib/less/js/dist/less-1.1.5.js
|
115
|
+
- lib/less/js/dist/less-1.1.5.min.js
|
116
|
+
- lib/less/js/dist/less-1.1.6.js
|
117
|
+
- lib/less/js/dist/less-1.1.6.min.js
|
118
|
+
- lib/less/js/dist/less-1.2.0.js
|
119
|
+
- lib/less/js/dist/less-1.2.0.min.js
|
120
|
+
- lib/less/js/dist/less-1.2.1.js
|
121
|
+
- lib/less/js/dist/less-1.2.1.min.js
|
122
|
+
- lib/less/js/dist/less-1.2.2.js
|
123
|
+
- lib/less/js/dist/less-1.2.2.min.js
|
124
|
+
- lib/less/js/dist/less-1.3.0.js
|
125
|
+
- lib/less/js/dist/less-1.3.0.min.js
|
126
|
+
- lib/less/js/dist/less-rhino-1.1.3.js
|
127
|
+
- lib/less/js/dist/less-rhino-1.1.5.js
|
128
|
+
- lib/less/js/lib/less/browser.js
|
129
|
+
- lib/less/js/lib/less/colors.js
|
130
|
+
- lib/less/js/lib/less/cssmin.js
|
131
|
+
- lib/less/js/lib/less/functions.js
|
132
|
+
- lib/less/js/lib/less/index.js
|
133
|
+
- lib/less/js/lib/less/parser.js
|
134
|
+
- lib/less/js/lib/less/rhino.js
|
135
|
+
- lib/less/js/lib/less/tree.js
|
136
|
+
- lib/less/js/lib/less/tree/alpha.js
|
137
|
+
- lib/less/js/lib/less/tree/anonymous.js
|
138
|
+
- lib/less/js/lib/less/tree/assignment.js
|
139
|
+
- lib/less/js/lib/less/tree/call.js
|
140
|
+
- lib/less/js/lib/less/tree/color.js
|
141
|
+
- lib/less/js/lib/less/tree/comment.js
|
142
|
+
- lib/less/js/lib/less/tree/condition.js
|
143
|
+
- lib/less/js/lib/less/tree/dimension.js
|
144
|
+
- lib/less/js/lib/less/tree/directive.js
|
145
|
+
- lib/less/js/lib/less/tree/element.js
|
146
|
+
- lib/less/js/lib/less/tree/expression.js
|
147
|
+
- lib/less/js/lib/less/tree/import.js
|
148
|
+
- lib/less/js/lib/less/tree/javascript.js
|
149
|
+
- lib/less/js/lib/less/tree/keyword.js
|
150
|
+
- lib/less/js/lib/less/tree/media.js
|
151
|
+
- lib/less/js/lib/less/tree/mixin.js
|
152
|
+
- lib/less/js/lib/less/tree/operation.js
|
153
|
+
- lib/less/js/lib/less/tree/paren.js
|
154
|
+
- lib/less/js/lib/less/tree/quoted.js
|
155
|
+
- lib/less/js/lib/less/tree/rule.js
|
156
|
+
- lib/less/js/lib/less/tree/ruleset.js
|
157
|
+
- lib/less/js/lib/less/tree/selector.js
|
158
|
+
- lib/less/js/lib/less/tree/url.js
|
159
|
+
- lib/less/js/lib/less/tree/value.js
|
160
|
+
- lib/less/js/lib/less/tree/variable.js
|
161
|
+
- lib/less/js/package.json
|
162
|
+
- lib/less/js/test/css/colors.css
|
163
|
+
- lib/less/js/test/css/comments.css
|
164
|
+
- lib/less/js/test/css/css-3.css
|
165
|
+
- lib/less/js/test/css/css-escapes.css
|
166
|
+
- lib/less/js/test/css/css.css
|
167
|
+
- lib/less/js/test/css/functions.css
|
168
|
+
- lib/less/js/test/css/ie-filters.css
|
169
|
+
- lib/less/js/test/css/import.css
|
170
|
+
- lib/less/js/test/css/javascript.css
|
171
|
+
- lib/less/js/test/css/lazy-eval.css
|
172
|
+
- lib/less/js/test/css/media.css
|
173
|
+
- lib/less/js/test/css/mixins-args.css
|
174
|
+
- lib/less/js/test/css/mixins-closure.css
|
175
|
+
- lib/less/js/test/css/mixins-guards.css
|
176
|
+
- lib/less/js/test/css/mixins-important.css
|
177
|
+
- lib/less/js/test/css/mixins-nested.css
|
178
|
+
- lib/less/js/test/css/mixins-pattern.css
|
179
|
+
- lib/less/js/test/css/mixins.css
|
180
|
+
- lib/less/js/test/css/operations.css
|
181
|
+
- lib/less/js/test/css/parens.css
|
182
|
+
- lib/less/js/test/css/rulesets.css
|
183
|
+
- lib/less/js/test/css/scope.css
|
184
|
+
- lib/less/js/test/css/selectors.css
|
185
|
+
- lib/less/js/test/css/strings.css
|
186
|
+
- lib/less/js/test/css/variables.css
|
187
|
+
- lib/less/js/test/css/whitespace.css
|
188
|
+
- lib/less/js/test/less-test.js
|
189
|
+
- lib/less/js/test/less/colors.less
|
190
|
+
- lib/less/js/test/less/comments.less
|
191
|
+
- lib/less/js/test/less/css-3.less
|
192
|
+
- lib/less/js/test/less/css-escapes.less
|
193
|
+
- lib/less/js/test/less/css.less
|
194
|
+
- lib/less/js/test/less/functions.less
|
195
|
+
- lib/less/js/test/less/ie-filters.less
|
196
|
+
- lib/less/js/test/less/import.less
|
197
|
+
- lib/less/js/test/less/import/import-test-a.less
|
198
|
+
- lib/less/js/test/less/import/import-test-b.less
|
199
|
+
- lib/less/js/test/less/import/import-test-c.less
|
200
|
+
- lib/less/js/test/less/import/import-test-d.css
|
201
|
+
- lib/less/js/test/less/import/import-test-e.less
|
202
|
+
- lib/less/js/test/less/javascript.less
|
203
|
+
- lib/less/js/test/less/lazy-eval.less
|
204
|
+
- lib/less/js/test/less/media.less
|
205
|
+
- lib/less/js/test/less/mixins-args.less
|
206
|
+
- lib/less/js/test/less/mixins-closure.less
|
207
|
+
- lib/less/js/test/less/mixins-guards.less
|
208
|
+
- lib/less/js/test/less/mixins-important.less
|
209
|
+
- lib/less/js/test/less/mixins-nested.less
|
210
|
+
- lib/less/js/test/less/mixins-pattern.less
|
211
|
+
- lib/less/js/test/less/mixins.less
|
212
|
+
- lib/less/js/test/less/operations.less
|
213
|
+
- lib/less/js/test/less/parens.less
|
214
|
+
- lib/less/js/test/less/rulesets.less
|
215
|
+
- lib/less/js/test/less/scope.less
|
216
|
+
- lib/less/js/test/less/selectors.less
|
217
|
+
- lib/less/js/test/less/strings.less
|
218
|
+
- lib/less/js/test/less/variables.less
|
219
|
+
- lib/less/js/test/less/whitespace.less
|
338
220
|
homepage: http://lesscss.org
|
339
221
|
licenses: []
|
340
222
|
post_install_message:
|
@@ -349,7 +231,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
349
231
|
version: '0'
|
350
232
|
segments:
|
351
233
|
- 0
|
352
|
-
hash:
|
234
|
+
hash: -3584122421188710040
|
353
235
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
354
236
|
none: false
|
355
237
|
requirements:
|
@@ -358,10 +240,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
358
240
|
version: '0'
|
359
241
|
segments:
|
360
242
|
- 0
|
361
|
-
hash:
|
243
|
+
hash: -3584122421188710040
|
362
244
|
requirements: []
|
363
245
|
rubyforge_project: less
|
364
|
-
rubygems_version: 1.8.
|
246
|
+
rubygems_version: 1.8.24
|
365
247
|
signing_key:
|
366
248
|
specification_version: 3
|
367
249
|
summary: Leaner CSS, in your browser or Ruby (via less.js)
|