unboxed-less 1.2.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (75) hide show
  1. data/.gitignore +4 -0
  2. data/CHANGELOG +62 -0
  3. data/LICENSE +179 -0
  4. data/README.md +48 -0
  5. data/Rakefile +60 -0
  6. data/VERSION +1 -0
  7. data/bin/lessc +92 -0
  8. data/lib/ext.rb +31 -0
  9. data/lib/less.rb +32 -0
  10. data/lib/less/command.rb +98 -0
  11. data/lib/less/engine.rb +55 -0
  12. data/lib/less/engine/grammar/common.tt +29 -0
  13. data/lib/less/engine/grammar/entity.tt +130 -0
  14. data/lib/less/engine/grammar/less.tt +326 -0
  15. data/lib/less/engine/nodes.rb +9 -0
  16. data/lib/less/engine/nodes/element.rb +278 -0
  17. data/lib/less/engine/nodes/entity.rb +79 -0
  18. data/lib/less/engine/nodes/function.rb +84 -0
  19. data/lib/less/engine/nodes/literal.rb +171 -0
  20. data/lib/less/engine/nodes/property.rb +231 -0
  21. data/lib/less/engine/nodes/ruleset.rb +12 -0
  22. data/lib/less/engine/nodes/selector.rb +44 -0
  23. data/spec/command_spec.rb +102 -0
  24. data/spec/css/accessors.css +18 -0
  25. data/spec/css/big.css +3768 -0
  26. data/spec/css/colors.css +14 -0
  27. data/spec/css/comments.css +9 -0
  28. data/spec/css/css-3.css +17 -0
  29. data/spec/css/css.css +50 -0
  30. data/spec/css/functions.css +6 -0
  31. data/spec/css/import.css +12 -0
  32. data/spec/css/lazy-eval.css +1 -0
  33. data/spec/css/mixins-args.css +32 -0
  34. data/spec/css/mixins.css +28 -0
  35. data/spec/css/operations.css +28 -0
  36. data/spec/css/parens.css +20 -0
  37. data/spec/css/rulesets.css +17 -0
  38. data/spec/css/scope.css +11 -0
  39. data/spec/css/selectors.css +13 -0
  40. data/spec/css/strings.css +12 -0
  41. data/spec/css/variables.css +7 -0
  42. data/spec/css/whitespace.css +7 -0
  43. data/spec/engine_spec.rb +112 -0
  44. data/spec/less/accessors.less +20 -0
  45. data/spec/less/big.less +4810 -0
  46. data/spec/less/colors.less +35 -0
  47. data/spec/less/comments.less +46 -0
  48. data/spec/less/css-3.less +45 -0
  49. data/spec/less/css.less +104 -0
  50. data/spec/less/exceptions/mixed-units-error.less +3 -0
  51. data/spec/less/exceptions/name-error-1.0.less +3 -0
  52. data/spec/less/exceptions/syntax-error-1.0.less +3 -0
  53. data/spec/less/functions.less +6 -0
  54. data/spec/less/hidden.less +25 -0
  55. data/spec/less/import.less +8 -0
  56. data/spec/less/import/import-test-a.less +2 -0
  57. data/spec/less/import/import-test-b.less +8 -0
  58. data/spec/less/import/import-test-c.less +7 -0
  59. data/spec/less/import/import-test-d.css +1 -0
  60. data/spec/less/lazy-eval.less +6 -0
  61. data/spec/less/literal-css.less +11 -0
  62. data/spec/less/mixins-args.less +59 -0
  63. data/spec/less/mixins.less +43 -0
  64. data/spec/less/operations.less +39 -0
  65. data/spec/less/parens.less +26 -0
  66. data/spec/less/rulesets.less +30 -0
  67. data/spec/less/scope.less +32 -0
  68. data/spec/less/selectors.less +24 -0
  69. data/spec/less/strings.less +14 -0
  70. data/spec/less/variables.less +24 -0
  71. data/spec/less/whitespace.less +34 -0
  72. data/spec/spec.css +50 -0
  73. data/spec/spec_helper.rb +8 -0
  74. data/unboxed-less.gemspec +121 -0
  75. metadata +140 -0
@@ -0,0 +1,26 @@
1
+ .parens {
2
+ @var: 1px;
3
+ border: (@var * 2) solid black;
4
+ margin: (@var * 1) (@var + 2) (4 * 4) 3;
5
+ width: (6 * 6);
6
+ padding: 2px (6px * 6px);
7
+ }
8
+
9
+ .more-parens {
10
+ @var: (2 * 2);
11
+ padding: (2 * @var) 4 4 (@var * 1px);
12
+ width: (@var * @var) * 6;
13
+ height: (7 * 7) + (8 * 8);
14
+ margin: 4 * (5 + 5) / 2 - (@var * 2);
15
+ //margin: (6 * 6)px;
16
+ }
17
+
18
+ .nested-parens {
19
+ width: 2 * (4 * (2 + (1 + 6))) - 1;
20
+ height: ((2+3)*(2+3) / (9-4)) + 1;
21
+ }
22
+
23
+ .mixed-units {
24
+ margin: 2px 4em 1 5pc;
25
+ padding: (2px + 4px) 1em 2px 2;
26
+ }
@@ -0,0 +1,30 @@
1
+ #first > .one {
2
+ > #second .two > #deux {
3
+ width: 50%;
4
+ #third {
5
+ :focus {
6
+ color: black;
7
+ #fifth {
8
+ > #sixth {
9
+ .seventh #eighth {
10
+ + #ninth {
11
+ color: purple;
12
+ }
13
+ }
14
+ }
15
+ }
16
+ }
17
+ height: 100%;
18
+ }
19
+ #fourth, #five, #six {
20
+ color: #110000;
21
+ .seven, .eight > #nine {
22
+ border: 1px solid black;
23
+ }
24
+ #ten {
25
+ color: red;
26
+ }
27
+ }
28
+ }
29
+ font-size: 2em;
30
+ }
@@ -0,0 +1,32 @@
1
+ @x: blue;
2
+ @z: transparent;
3
+ @mix: none;
4
+
5
+ .mixin {
6
+ @mix: #989;
7
+ }
8
+
9
+ .tiny-scope {
10
+ color: @mix; // #989
11
+ .mixin;
12
+ }
13
+
14
+ .scope1 {
15
+ @y: orange;
16
+ @z: black;
17
+ color: @x; // blue
18
+ border-color: @z; // black
19
+ .hidden {
20
+ @x: #131313;
21
+ }
22
+ .scope2 {
23
+ @y: red;
24
+ color: @x; // blue
25
+ .scope3 {
26
+ @local: white;
27
+ color: @y; // red
28
+ border-color: @z; // black
29
+ background-color: @local; // white
30
+ }
31
+ }
32
+ }
@@ -0,0 +1,24 @@
1
+ h1, h2, h3 {
2
+ a, p {
3
+ :hover {
4
+ color: red;
5
+ }
6
+ }
7
+ }
8
+
9
+ #all { color: blue; }
10
+ #the { color: blue; }
11
+ #same { color: blue; }
12
+
13
+ ul, li, div, q, blockquote, textarea {
14
+ margin: 0;
15
+ }
16
+
17
+ td {
18
+ margin: 0;
19
+ padding: 0;
20
+ }
21
+
22
+ td, input {
23
+ line-height: 1em;
24
+ }
@@ -0,0 +1,14 @@
1
+ #strings {
2
+ background-image: url("http://son-of-a-banana.com");
3
+ quotes: "~" "~";
4
+ content: "#*%:&^,)!.(~*})";
5
+ empty: "";
6
+ }
7
+ #comments {
8
+ content: "/* hello */ // not-so-secret";
9
+ }
10
+ #single-quote {
11
+ quotes: "'" "'";
12
+ content: '""#!&""';
13
+ empty: '';
14
+ }
@@ -0,0 +1,24 @@
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
+ }
@@ -0,0 +1,34 @@
1
+
2
+
3
+ .whitespace
4
+ { color: white; }
5
+
6
+ .whitespace
7
+ {
8
+ color: white;
9
+ }
10
+ .whitespace
11
+ { color: white; }
12
+
13
+ .whitespace{color:white;}
14
+ .whitespace { color : white ; }
15
+
16
+ .white,
17
+ .space,
18
+ .mania
19
+ { color: white; }
20
+
21
+ .no-semi-column { color: white }
22
+ .no-semi-column {
23
+ color: white;
24
+ white-space: pre
25
+ }
26
+ .no-semi-column {border: 2px solid white}
27
+ .newlines {
28
+ border: 2px
29
+ solid
30
+ black;
31
+ }
32
+ .empty {
33
+
34
+ }
@@ -0,0 +1,50 @@
1
+ div { color: black; }
2
+ div { width: 99%; }
3
+ * { min-width: 45em; }
4
+ h1 { color: none; }
5
+ h2 > a > p { color: none; }
6
+ h3 { color: none; }
7
+ div.class { color: blue; }
8
+ div#id { color: green; }
9
+ .class#id { color: purple; }
10
+ .one.two.three { color: grey; }
11
+ @media print { font-size: 3em; }
12
+ @media screen { font-size: 10px; }
13
+ @font-face {
14
+ font-family: 'Garamond Pro';
15
+ src: url("/fonts/garamond-pro.ttf");
16
+ }
17
+ a:hover { color: #999999; }
18
+ a:link { color: #999999; }
19
+ p { text-transform: none; }
20
+ p:first-child { text-transform: none; }
21
+ q:lang(no) { quotes: none; }
22
+ p + h1 { font-size: 2.2em; }
23
+ input[type="text"] { font-weight: normal; }
24
+ h2[title] { font-size: 100%; }
25
+ [disabled] { color: transparent; }
26
+ #shorthands {
27
+ border: 1px solid #000000;
28
+ font: 12px/16px Arial;
29
+ margin: 1px 0;
30
+ padding: 0 auto;
31
+ background: url("http://www.lesscss.org/spec.html") no-repeat 0 4px;
32
+ }
33
+ #more-shorthands {
34
+ margin: 0;
35
+ padding: 1px 0 2px 0;
36
+ font: normal small/20px 'Trebuchet MS', Verdana, sans-serif;
37
+ }
38
+ .misc {
39
+ -moz-border-radius: 2px;
40
+ display: -moz-inline-stack;
41
+ width: 0.1em;
42
+ background-color: #009998;
43
+ background-image: url(images/image.jpg);
44
+ background: -webkit-gradient(linear, left top, left bottom, from(red), to(blue));
45
+ }
46
+ #important {
47
+ color: red !important;
48
+ width: 100% !important;
49
+ height: 20px ! important;
50
+ }
@@ -0,0 +1,8 @@
1
+ require 'rubygems'
2
+ require 'spec'
3
+
4
+ $:.unshift File.join(File.dirname(__FILE__), '..', 'lib')
5
+ $:.unshift File.dirname(__FILE__)
6
+
7
+ require 'less'
8
+
@@ -0,0 +1,121 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run `rake gemspec`
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{unboxed-less}
8
+ s.version = "1.2.12"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["cloudhead"]
12
+ s.date = %q{2009-10-20}
13
+ s.default_executable = %q{lessc}
14
+ s.description = %q{LESS is leaner CSS}
15
+ s.email = %q{self@cloudhead.net}
16
+ s.executables = ["lessc"]
17
+ s.extra_rdoc_files = [
18
+ "LICENSE",
19
+ "README.md"
20
+ ]
21
+ s.files = [
22
+ ".gitignore",
23
+ "CHANGELOG",
24
+ "LICENSE",
25
+ "README.md",
26
+ "Rakefile",
27
+ "VERSION",
28
+ "bin/lessc",
29
+ "lib/ext.rb",
30
+ "lib/less.rb",
31
+ "lib/less/command.rb",
32
+ "lib/less/engine.rb",
33
+ "lib/less/engine/grammar/common.tt",
34
+ "lib/less/engine/grammar/entity.tt",
35
+ "lib/less/engine/grammar/less.tt",
36
+ "lib/less/engine/nodes.rb",
37
+ "lib/less/engine/nodes/element.rb",
38
+ "lib/less/engine/nodes/entity.rb",
39
+ "lib/less/engine/nodes/function.rb",
40
+ "lib/less/engine/nodes/literal.rb",
41
+ "lib/less/engine/nodes/property.rb",
42
+ "lib/less/engine/nodes/ruleset.rb",
43
+ "lib/less/engine/nodes/selector.rb",
44
+ "spec/command_spec.rb",
45
+ "spec/css/accessors.css",
46
+ "spec/css/big.css",
47
+ "spec/css/colors.css",
48
+ "spec/css/comments.css",
49
+ "spec/css/css-3.css",
50
+ "spec/css/css.css",
51
+ "spec/css/functions.css",
52
+ "spec/css/import.css",
53
+ "spec/css/lazy-eval.css",
54
+ "spec/css/mixins-args.css",
55
+ "spec/css/mixins.css",
56
+ "spec/css/operations.css",
57
+ "spec/css/parens.css",
58
+ "spec/css/rulesets.css",
59
+ "spec/css/scope.css",
60
+ "spec/css/selectors.css",
61
+ "spec/css/strings.css",
62
+ "spec/css/variables.css",
63
+ "spec/css/whitespace.css",
64
+ "spec/engine_spec.rb",
65
+ "spec/less/accessors.less",
66
+ "spec/less/big.less",
67
+ "spec/less/colors.less",
68
+ "spec/less/comments.less",
69
+ "spec/less/css-3.less",
70
+ "spec/less/css.less",
71
+ "spec/less/exceptions/mixed-units-error.less",
72
+ "spec/less/exceptions/name-error-1.0.less",
73
+ "spec/less/exceptions/syntax-error-1.0.less",
74
+ "spec/less/functions.less",
75
+ "spec/less/hidden.less",
76
+ "spec/less/import.less",
77
+ "spec/less/import/import-test-a.less",
78
+ "spec/less/import/import-test-b.less",
79
+ "spec/less/import/import-test-c.less",
80
+ "spec/less/import/import-test-d.css",
81
+ "spec/less/lazy-eval.less",
82
+ "spec/less/literal-css.less",
83
+ "spec/less/mixins-args.less",
84
+ "spec/less/mixins.less",
85
+ "spec/less/operations.less",
86
+ "spec/less/parens.less",
87
+ "spec/less/rulesets.less",
88
+ "spec/less/scope.less",
89
+ "spec/less/selectors.less",
90
+ "spec/less/strings.less",
91
+ "spec/less/variables.less",
92
+ "spec/less/whitespace.less",
93
+ "spec/spec.css",
94
+ "spec/spec_helper.rb",
95
+ "unboxed-less.gemspec"
96
+ ]
97
+ s.homepage = %q{http://www.lesscss.org}
98
+ s.rdoc_options = ["--charset=UTF-8"]
99
+ s.require_paths = ["lib"]
100
+ s.rubyforge_project = %q{less}
101
+ s.rubygems_version = %q{1.3.5}
102
+ s.summary = %q{LESS compiler}
103
+ s.test_files = [
104
+ "spec/command_spec.rb",
105
+ "spec/engine_spec.rb",
106
+ "spec/spec_helper.rb"
107
+ ]
108
+
109
+ if s.respond_to? :specification_version then
110
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
111
+ s.specification_version = 3
112
+
113
+ if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
114
+ s.add_runtime_dependency(%q<treetop>, [">= 1.4.2"])
115
+ else
116
+ s.add_dependency(%q<treetop>, [">= 1.4.2"])
117
+ end
118
+ else
119
+ s.add_dependency(%q<treetop>, [">= 1.4.2"])
120
+ end
121
+ end
metadata ADDED
@@ -0,0 +1,140 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: unboxed-less
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.2.12
5
+ platform: ruby
6
+ authors:
7
+ - cloudhead
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-10-20 00:00:00 +01:00
13
+ default_executable: lessc
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: treetop
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 1.4.2
24
+ version:
25
+ description: LESS is leaner CSS
26
+ email: self@cloudhead.net
27
+ executables:
28
+ - lessc
29
+ extensions: []
30
+
31
+ extra_rdoc_files:
32
+ - LICENSE
33
+ - README.md
34
+ files:
35
+ - .gitignore
36
+ - CHANGELOG
37
+ - LICENSE
38
+ - README.md
39
+ - Rakefile
40
+ - VERSION
41
+ - bin/lessc
42
+ - lib/ext.rb
43
+ - lib/less.rb
44
+ - lib/less/command.rb
45
+ - lib/less/engine.rb
46
+ - lib/less/engine/grammar/common.tt
47
+ - lib/less/engine/grammar/entity.tt
48
+ - lib/less/engine/grammar/less.tt
49
+ - lib/less/engine/nodes.rb
50
+ - lib/less/engine/nodes/element.rb
51
+ - lib/less/engine/nodes/entity.rb
52
+ - lib/less/engine/nodes/function.rb
53
+ - lib/less/engine/nodes/literal.rb
54
+ - lib/less/engine/nodes/property.rb
55
+ - lib/less/engine/nodes/ruleset.rb
56
+ - lib/less/engine/nodes/selector.rb
57
+ - spec/command_spec.rb
58
+ - spec/css/accessors.css
59
+ - spec/css/big.css
60
+ - spec/css/colors.css
61
+ - spec/css/comments.css
62
+ - spec/css/css-3.css
63
+ - spec/css/css.css
64
+ - spec/css/functions.css
65
+ - spec/css/import.css
66
+ - spec/css/lazy-eval.css
67
+ - spec/css/mixins-args.css
68
+ - spec/css/mixins.css
69
+ - spec/css/operations.css
70
+ - spec/css/parens.css
71
+ - spec/css/rulesets.css
72
+ - spec/css/scope.css
73
+ - spec/css/selectors.css
74
+ - spec/css/strings.css
75
+ - spec/css/variables.css
76
+ - spec/css/whitespace.css
77
+ - spec/engine_spec.rb
78
+ - spec/less/accessors.less
79
+ - spec/less/big.less
80
+ - spec/less/colors.less
81
+ - spec/less/comments.less
82
+ - spec/less/css-3.less
83
+ - spec/less/css.less
84
+ - spec/less/exceptions/mixed-units-error.less
85
+ - spec/less/exceptions/name-error-1.0.less
86
+ - spec/less/exceptions/syntax-error-1.0.less
87
+ - spec/less/functions.less
88
+ - spec/less/hidden.less
89
+ - spec/less/import.less
90
+ - spec/less/import/import-test-a.less
91
+ - spec/less/import/import-test-b.less
92
+ - spec/less/import/import-test-c.less
93
+ - spec/less/import/import-test-d.css
94
+ - spec/less/lazy-eval.less
95
+ - spec/less/literal-css.less
96
+ - spec/less/mixins-args.less
97
+ - spec/less/mixins.less
98
+ - spec/less/operations.less
99
+ - spec/less/parens.less
100
+ - spec/less/rulesets.less
101
+ - spec/less/scope.less
102
+ - spec/less/selectors.less
103
+ - spec/less/strings.less
104
+ - spec/less/variables.less
105
+ - spec/less/whitespace.less
106
+ - spec/spec.css
107
+ - spec/spec_helper.rb
108
+ - unboxed-less.gemspec
109
+ has_rdoc: true
110
+ homepage: http://www.lesscss.org
111
+ licenses: []
112
+
113
+ post_install_message:
114
+ rdoc_options:
115
+ - --charset=UTF-8
116
+ require_paths:
117
+ - lib
118
+ required_ruby_version: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - ">="
121
+ - !ruby/object:Gem::Version
122
+ version: "0"
123
+ version:
124
+ required_rubygems_version: !ruby/object:Gem::Requirement
125
+ requirements:
126
+ - - ">="
127
+ - !ruby/object:Gem::Version
128
+ version: "0"
129
+ version:
130
+ requirements: []
131
+
132
+ rubyforge_project: less
133
+ rubygems_version: 1.3.5
134
+ signing_key:
135
+ specification_version: 3
136
+ summary: LESS compiler
137
+ test_files:
138
+ - spec/command_spec.rb
139
+ - spec/engine_spec.rb
140
+ - spec/spec_helper.rb