less 2.5.1 → 2.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. checksums.yaml +4 -4
  2. data/Changelog.md +5 -1
  3. data/README.md +12 -0
  4. data/lib/less/js/.travis.yml +8 -0
  5. data/lib/less/js/CHANGELOG.md +22 -0
  6. data/lib/less/js/CONTRIBUTING.md +1 -1
  7. data/lib/less/js/Gruntfile.js +8 -0
  8. data/lib/less/js/README.md +5 -304
  9. data/lib/less/js/bin/lessc +16 -13
  10. data/lib/less/js/bower.json +2 -2
  11. data/lib/less/js/build/README.md +4 -303
  12. data/lib/less/js/build/build.yml +2 -0
  13. data/lib/less/js/dist/less-1.6.3.js +7627 -0
  14. data/lib/less/js/dist/less-1.6.3.min.js +16 -0
  15. data/lib/less/js/dist/less-1.7.0.js +7921 -0
  16. data/lib/less/js/dist/less-1.7.0.min.js +16 -0
  17. data/lib/less/js/dist/less-rhino-1.6.3.js +9020 -0
  18. data/lib/less/js/dist/less-rhino-1.7.0.js +9301 -0
  19. data/lib/less/js/dist/lessc-rhino-1.6.3.js +449 -0
  20. data/lib/less/js/dist/lessc-rhino-1.7.0.js +449 -0
  21. data/lib/less/js/lib/less/browser.js +22 -9
  22. data/lib/less/js/lib/less/functions.js +47 -16
  23. data/lib/less/js/lib/less/import-visitor.js +29 -5
  24. data/lib/less/js/lib/less/index.js +10 -3
  25. data/lib/less/js/lib/less/parser.js +139 -52
  26. data/lib/less/js/lib/less/to-css-visitor.js +26 -4
  27. data/lib/less/js/lib/less/tree/color.js +11 -1
  28. data/lib/less/js/lib/less/tree/detached-ruleset.js +20 -0
  29. data/lib/less/js/lib/less/tree/dimension.js +17 -6
  30. data/lib/less/js/lib/less/tree/directive.js +33 -29
  31. data/lib/less/js/lib/less/tree/import.js +8 -1
  32. data/lib/less/js/lib/less/tree/keyword.js +1 -0
  33. data/lib/less/js/lib/less/tree/media.js +3 -0
  34. data/lib/less/js/lib/less/tree/mixin.js +15 -11
  35. data/lib/less/js/lib/less/tree/rule.js +14 -4
  36. data/lib/less/js/lib/less/tree/ruleset-call.js +16 -0
  37. data/lib/less/js/lib/less/tree/ruleset.js +48 -19
  38. data/lib/less/js/package.json +13 -13
  39. data/lib/less/js/test/browser/css/postProcessor/postProcessor.css +4 -0
  40. data/lib/less/js/test/browser/less/postProcessor/postProcessor.less +4 -0
  41. data/lib/less/js/test/browser/runner-postProcessor-options.js +4 -0
  42. data/lib/less/js/test/browser/runner-postProcessor.js +3 -0
  43. data/lib/less/js/test/css/debug/linenumbers-all.css +2 -2
  44. data/lib/less/js/test/css/debug/linenumbers-comments.css +1 -1
  45. data/lib/less/js/test/css/debug/linenumbers-mediaquery.css +1 -1
  46. data/lib/less/js/test/css/detached-rulesets.css +71 -0
  47. data/lib/less/js/test/css/functions.css +21 -4
  48. data/lib/less/js/test/css/import-reference.css +23 -4
  49. data/lib/less/js/test/css/merge.css +8 -0
  50. data/lib/less/js/test/css/mixins-pattern.css +4 -0
  51. data/lib/less/js/test/css/scope.css +3 -0
  52. data/lib/less/js/test/css/variables-in-at-rules.css +18 -0
  53. data/lib/less/js/test/less/css-guards.less +3 -0
  54. data/lib/less/js/test/less/detached-rulesets.less +103 -0
  55. data/lib/less/js/test/less/errors/at-rules-undefined-var.less +4 -0
  56. data/lib/less/js/test/less/errors/at-rules-undefined-var.txt +4 -0
  57. data/lib/less/js/test/less/errors/detached-ruleset-1.less +6 -0
  58. data/lib/less/js/test/less/errors/detached-ruleset-1.txt +4 -0
  59. data/lib/less/js/test/less/errors/detached-ruleset-2.less +6 -0
  60. data/lib/less/js/test/less/errors/detached-ruleset-2.txt +4 -0
  61. data/lib/less/js/test/less/errors/detached-ruleset-3.less +4 -0
  62. data/lib/less/js/test/less/errors/detached-ruleset-3.txt +4 -0
  63. data/lib/less/js/test/less/errors/detached-ruleset-4.less +5 -0
  64. data/lib/less/js/test/less/errors/detached-ruleset-4.txt +3 -0
  65. data/lib/less/js/test/less/errors/detached-ruleset-5.less +4 -0
  66. data/lib/less/js/test/less/errors/detached-ruleset-5.txt +3 -0
  67. data/lib/less/js/test/less/errors/detached-ruleset-6.less +5 -0
  68. data/lib/less/js/test/less/errors/detached-ruleset-6.txt +4 -0
  69. data/lib/less/js/test/less/errors/mixin-not-visible-in-scope-1.less +9 -0
  70. data/lib/less/js/test/less/errors/mixin-not-visible-in-scope-1.txt +4 -0
  71. data/lib/less/js/test/less/errors/percentage-missing-space.less +3 -0
  72. data/lib/less/js/test/less/errors/percentage-missing-space.txt +4 -0
  73. data/lib/less/js/test/less/functions.less +25 -7
  74. data/lib/less/js/test/less/import-reference.less +7 -4
  75. data/lib/less/js/test/less/import/import-reference.less +8 -0
  76. data/lib/less/js/test/less/merge.less +20 -1
  77. data/lib/less/js/test/less/mixins-guards.less +7 -1
  78. data/lib/less/js/test/less/mixins-pattern.less +3 -0
  79. data/lib/less/js/test/less/scope.less +25 -0
  80. data/lib/less/js/test/less/variables-in-at-rules.less +20 -0
  81. data/lib/less/version.rb +1 -1
  82. metadata +39 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c3a4db88aefa8acebc9d23dd991e81dd607c9914
4
- data.tar.gz: 76ec06952260ffbb08bf7bdc01233280cf6f851a
3
+ metadata.gz: 792bbf2f97fe5b11d31fba7f199cf862ed7cc4c0
4
+ data.tar.gz: 766dd0f65348fceb17aaf77e3057b6dfe52f7f3a
5
5
  SHA512:
6
- metadata.gz: 970d9d1d41cb14a8381c4877424af2287cf2d0771b6ddc7ba994c734a47b271e49bb9a8169c91cb8304e0f10b2517e283734aed4c62bd2a9227383c6101561bb
7
- data.tar.gz: f363f10d080ad4e04ff62b6f5678167741840b707cb7323a02f4c15d2ac78eee03335e781ec6d43d4690a0a544481c5d1b601d9bfef1054447c933d75ea6b030
6
+ metadata.gz: 8e01c4a9d2bdb3d04341b96c4b71ff9967d20b63715a9d699752a9ae8e2bd105bbb832bd73450c98d22225b3b9add67d750877b13f0619612e8fb330e904742b
7
+ data.tar.gz: 492ade4340c93627608eed38084e9151dd86cc4fc13ef7f99d7ecf398c13cc85f15f10fe3f594f6084bf0f381ba224f0a7633914681e3eef189ea7b7f12d1fb5
@@ -1,6 +1,10 @@
1
1
  # Changelog
2
2
 
3
- ## 2.5.1 2014/5/30
3
+ ## 2.6.9 2014/06/02
4
+
5
+ * upgrade to less 1.7.0
6
+
7
+ ## 2.5.1 2014/05/30
4
8
 
5
9
  * upgrade to less 1.6.3
6
10
 
data/README.md CHANGED
@@ -35,6 +35,18 @@ tree.to_css #=> .class {\n width: 2;\n}\n
35
35
  tree.to_css(:compress => true) #=> .class{width:2;}
36
36
  ```
37
37
 
38
+ ## Development
39
+
40
+ This repository contains less.js as a submodule, so to run the tests,
41
+ you'll need to grab that code as well. To do that, run `git submodule update --init`
42
+ from the root directory of the project.
43
+
44
+ To run the tests:
45
+
46
+ bundle
47
+ rake
48
+
49
+
38
50
  ## License
39
51
 
40
52
  less.rb is licensed under the same terms as less.js
@@ -0,0 +1,8 @@
1
+ language: node_js
2
+ node_js:
3
+ - "0.11"
4
+ - "0.10"
5
+ - "0.8"
6
+ install:
7
+ - npm install -g grunt-cli
8
+ - npm install
@@ -1,3 +1,25 @@
1
+ # 1.7.0
2
+
3
+ 2014-02-27
4
+
5
+ - Add support for rulesets in variables and passed to mixins to allow wrapping
6
+ - Change luma to follow the w3c spec, luma is available as luminance. Contrast still uses luma so you may see differences if your threshold % is close to the existing calculated luma.
7
+ - Upgraded clean css which means the --selectors-merge-mode is now renamed --compatibility
8
+ - Add support for using variables with @keyframes, @namespace, @charset
9
+ - Support property merging with +_ when spaces are needed and keep + for comma separated
10
+ - Imports now always import once consistently - a race condition meant previously certain configurations would lead to a different ordering of files
11
+ - Fix support for `.mixin(@args...)` when called with no args (e.g. `.mixin();`)
12
+ - Do unit conversions with min and max functions. Don't pass through if not understood, throw an error
13
+ - Allow % to be passed on its own to the unit function e.g. `unit(10, %)`
14
+ - Fix a bug when comparing a unit value to a non-unit value if the unit-value was the multiple of another unit (e.g. cm, mm, deg etc.)
15
+ - Fix mixins with media queries in import reference files not being put into the output (they now output, they used to incorrectly not)
16
+ - Fix lint mode - now reports all errors
17
+ - Fixed a small scope issue with & {} selector rulesets incorrectly making mixins visible - regression from 1.6.2
18
+ - Browser - added log level "debug" at 3 to get less logging, The default has changed so unless you set the value to the default you won't see a difference
19
+ - Browser - logLevel takes effect regardless of the environment (production/dev)
20
+ - Browser - added postProcessor option, a function called to post-process the css before adding to the page
21
+ - Browser - use the right request for file access in IE
22
+
1
23
  # 1.6.3
2
24
 
3
25
  2014-02-08
@@ -47,4 +47,4 @@ _Pull requests are encouraged!_
47
47
  ## Developing
48
48
  If you want to take an issue just add a small comment saying you are having a go at something, so we don't get duplication.
49
49
 
50
- Learn more about [developing Less.js](https://github.com/less/less.js/wiki/Developing-less.js).
50
+ Learn more about [developing Less.js](http://lesscss.org/usage/#developing-less).
@@ -214,6 +214,14 @@ module.exports = function(grunt) {
214
214
  specs: 'test/browser/runner-global-vars-spec.js',
215
215
  outfile: 'tmp/browser/test-runner-global-vars.html'
216
216
  }
217
+ },
218
+ postProcessor: {
219
+ src: ['test/browser/less/postProcessor/*.less'],
220
+ options: {
221
+ helpers: 'test/browser/runner-postProcessor-options.js',
222
+ specs: 'test/browser/runner-postProcessor.js',
223
+ outfile: 'tmp/browser/test-postProcessor.html'
224
+ }
217
225
  }
218
226
  },
219
227
 
@@ -1,8 +1,9 @@
1
+ [![Build Status](https://travis-ci.org/less/less.js.png?branch=master)](https://travis-ci.org/less/less.js)
1
2
  # [Less.js v1.6.3](http://lesscss.org)
2
3
 
3
4
  > The **dynamic** stylesheet language. [http://lesscss.org](http://lesscss.org).
4
5
 
5
- This is the JavaScript, and now official, stable version of LESS.
6
+ This is the JavaScript, and now official, stable version of Less.
6
7
 
7
8
 
8
9
  ## Getting Started
@@ -13,265 +14,16 @@ Options for adding Less.js to your project:
13
14
  * [Download the latest release][download]
14
15
  * Clone the repo: `git clone git://github.com/less/less.js.git`
15
16
 
16
-
17
-
18
- ## Feature Highlights
19
- LESS extends CSS with dynamic features such as:
20
-
21
- * [nesting](#nesting)
22
- * [variables](#variables)
23
- * [operations](#operations)
24
- * [mixins](#mixins)
25
- * [extend](#extend) (selector inheritance)
26
-
27
- To learn about the many other features Less.js has to offer please visit [http://lesscss.org](http://lesscss.org) and [the Less.js wiki][wiki]
28
-
29
-
30
- ### Examples
31
- #### nesting
32
- Take advantage of nesting to make code more readable and maintainable. This:
33
-
34
- ```less
35
- .nav > li > a {
36
- border: 1px solid #f5f5f5;
37
- &:hover {
38
- border-color: #ddd;
39
- }
40
- }
41
- ```
42
-
43
- renders to:
44
-
45
- ```css
46
- .nav > li > a {
47
- border: 1px solid #f5f5f5;
48
- }
49
- .nav > li > a:hover {
50
- border-color: #ddd;
51
- }
52
- ```
53
-
54
-
55
- #### variables
56
- Updated commonly used values from a single location.
57
-
58
- ```less
59
- // Variables ("inline" comments like this can be used)
60
- @link-color: #428bca; // appears as "sea blue"
61
-
62
- /* Or "block comments" that span
63
- multiple lines, like this */
64
- a {
65
- color: @link-color; // use the variable in styles
66
- }
67
- ```
68
-
69
- Variables can also be used in `@import` statements, URLs, selector names, and more.
70
-
71
-
72
-
73
- #### operations
74
- Continuing with the same example above, we can use our variables even easier to maintain with _operations_, which enables the use of addition, subraction, multiplication and division in your styles:
75
-
76
- ```less
77
- // Variables
78
- @link-color: #428bca;
79
- @link-color-hover: darken(@link-color, 10%);
80
-
81
- // Styles
82
- a {
83
- color: @link-color;
84
- }
85
- a:hover {
86
- color: @link-color-hover;
87
- }
88
- ```
89
- renders to:
90
-
91
- ```css
92
- a {
93
- color: #428bca;
94
- }
95
- a:hover {
96
- color: #3071a9;
97
- }
98
- ```
99
-
100
- #### mixins
101
- ##### "implicit" mixins
102
- Mixins enable you to apply the styles of one selector inside another selector like this:
103
-
104
- ```less
105
- // Variables
106
- @link-color: #428bca;
107
-
108
- // Any "regular" class...
109
- .link {
110
- color: @link-color;
111
- }
112
- a {
113
- font-weight: bold;
114
- .link; // ...can be used as an "implicit" mixin
115
- }
116
- ```
117
-
118
- renders to:
119
-
120
- ```css
121
- .link {
122
- color: #428bca;
123
- }
124
- a {
125
- font-weight: bold;
126
- color: #428bca;
127
- }
128
- ```
129
-
130
- So any selector can be an "implicit mixin". We'll show you a DRYer way to do this below.
131
-
132
-
133
-
134
- ##### parametric mixins
135
- Mixins can also accept parameters:
136
-
137
- ```less
138
- // Transition mixin
139
- .transition(@transition) {
140
- -webkit-transition: @transition;
141
- -moz-transition: @transition;
142
- -o-transition: @transition;
143
- transition: @transition;
144
- }
145
- ```
146
-
147
- used like this:
148
-
149
- ```less
150
- // Variables
151
- @link-color: #428bca;
152
- @link-color-hover: darken(@link-color, 10%);
153
-
154
- //Transition mixin would be anywhere here
155
-
156
- a {
157
- font-weight: bold;
158
- color: @link-color;
159
- .transition(color .2s ease-in-out);
160
- // Hover state
161
- &:hover {
162
- color: @link-color-hover;
163
- }
164
- }
165
- ```
166
-
167
- renders to:
168
-
169
- ```css
170
- a {
171
- font-weight: bold;
172
- color: #428bca;
173
- -webkit-transition: color 0.2s ease-in-out;
174
- -moz-transition: color 0.2s ease-in-out;
175
- -o-transition: color 0.2s ease-in-out;
176
- transition: color 0.2s ease-in-out;
177
- }
178
- a:hover {
179
- color: #3071a9;
180
- }
181
- ```
182
-
183
-
184
- #### extend
185
- The `extend` feature can be thought of as the _inverse_ of mixins. It accomplishes the goal of "borrowing styles", but rather than copying all the rules of _Selector A_ over to _Selector B_, `extend` copies the name of the _inheriting selector_ (_Selector B_) over to the _extending selector_ (_Selector A_). So continuing with the example used for [mixins](#mixins) above, extend works like this:
186
-
187
- ```less
188
- // Variables
189
- @link-color: #428bca;
190
-
191
- .link {
192
- color: @link-color;
193
- }
194
- a:extend(.link) {
195
- font-weight: bold;
196
- }
197
- // Can also be written as
198
- a {
199
- &:extend(.link);
200
- font-weight: bold;
201
- }
202
- ```
203
-
204
- renders to:
205
-
206
- ```css
207
- .link, a {
208
- color: #428bca;
209
- }
210
- a {
211
- font-weight: bold;
212
- }
213
- ```
214
-
215
- ## Usage
216
-
217
- ### Compiling and Parsing
218
- Invoke the compiler from node:
219
-
220
- ```javascript
221
- var less = require('less');
222
-
223
- less.render('.class { width: (1 + 1) }', function (e, css) {
224
- console.log(css);
225
- });
226
- ```
227
-
228
- Outputs:
229
-
230
- ```css
231
- .class {
232
- width: 2;
233
- }
234
- ```
235
-
236
- You may also manually invoke the parser and compiler:
237
-
238
- ```javascript
239
- var parser = new(less.Parser);
240
-
241
- parser.parse('.class { width: (1 + 1) }', function (err, tree) {
242
- if (err) { return console.error(err) }
243
- console.log(tree.toCSS());
244
- });
245
- ```
246
-
247
-
248
- ### Configuration
249
- You may also pass options to the compiler:
250
-
251
- ```javascript
252
- var parser = new(less.Parser)({
253
- paths: ['.', './src/less'], // Specify search paths for @import directives
254
- filename: 'style.less' // Specify a filename, for better error messages
255
- });
256
-
257
- parser.parse('.class { width: (1 + 1) }', function (e, tree) {
258
- tree.toCSS({ compress: true }); // Minify CSS output
259
- });
260
- ```
261
-
262
17
  ## More information
263
18
 
264
- For general information on the language, configuration options or usage visit [lesscss.org](http://lesscss.org) or [the less wiki][wiki].
19
+ For general information on the language, configuration options or usage visit [lesscss.org](http://lesscss.org).
265
20
 
266
21
  Here are other resources for using Less.js:
267
22
 
268
23
  * [stackoverflow.com][so] is a great place to get answers about Less.
269
- * [node.js tools](https://github.com/less/less.js/wiki/Converting-LESS-to-CSS) for converting Less to CSS
270
- * [GUI compilers for Less](https://github.com/less/less.js/wiki/GUI-compilers-that-use-LESS.js)
271
24
  * [Less.js Issues][issues] for reporting bugs
272
25
 
273
26
 
274
-
275
27
  ## Contributing
276
28
  Please read [CONTRIBUTING.md](./CONTRIBUTING.md). Add unit tests for any new or changed functionality. Lint and test your code using [Grunt](http://gruntjs.com/).
277
29
 
@@ -283,57 +35,7 @@ Please report documentation issues in [the documentation project](https://github
283
35
 
284
36
  ### Development
285
37
 
286
- #### Install Less.js
287
-
288
- Start by either [downloading this project][download] manually, or in the command line:
289
-
290
- ```shell
291
- git clone https://github.com/less/less.js.git "less"
292
- ```
293
- and then `cd less`.
294
-
295
-
296
- #### Install dependencies
297
-
298
- To install all the dependencies for less development, run:
299
-
300
- ```shell
301
- npm install
302
- ```
303
-
304
- If you haven't run grunt before, install grunt-cli globally so you can just run `grunt`
305
-
306
- ```shell
307
- npm install grunt-cli -g
308
- ```
309
-
310
- You should now be able to build Less.js, run tests, benchmarking, and other tasks listed in the Gruntfile.
311
-
312
- ## Using Less.js Grunt
313
-
314
- Tests, benchmarking and building is done using Grunt `~0.4.1`. If you haven't used [Grunt](http://gruntjs.com/) before, be sure to check out the [Getting Started](http://gruntjs.com/getting-started) guide, as it explains how to install and use Grunt plugins, which are necessary for development with Less.js.
315
-
316
- The Less.js [Gruntfile](Gruntfile.js) is configured with the following "convenience tasks" :
317
-
318
- #### test - `grunt`
319
- Runs jshint, nodeunit and headless jasmine tests using [phantomjs](http://code.google.com/p/phantomjs/). You must have phantomjs installed for the jasmine tests to run.
320
-
321
- #### test - `grunt benchmark`
322
- Runs the benchmark suite.
323
-
324
- #### build for testing browser - 'grunt browser'
325
- This builds less.js and puts it in 'test/browser/less.js'
326
-
327
- #### build - `grunt stable | grunt beta | grunt alpha`
328
- Builds Less.js from from the `/lib/less` source files. This is done by the developer releasing a new release, do not do this if you are creating a pull request.
329
-
330
- #### readme - `grunt readme`
331
- Build the README file from [a template](build/README.md) to ensure that metadata is up-to-date and (more likely to be) correct.
332
-
333
- Please review the [Gruntfile](Gruntfile.js) to become acquainted with the other available tasks.
334
-
335
- **Please note** that if you have any issues installing dependencies or running any of the Gruntfile commands, please make sure to uninstall any previous versions, both in the local node_modules directory, and clear your global npm cache, and then try running `npm install` again. After that if you still have issues, please let us know about it so we can help.
336
-
38
+ Read [Developing Less](http://lesscss.org/usage/#developing-less).
337
39
 
338
40
  ## Release History
339
41
  See the [changelog](CHANGELOG.md)
@@ -346,5 +48,4 @@ Licensed under the [Apache License](LICENSE).
346
48
 
347
49
  [so]: http://stackoverflow.com/questions/tagged/twitter-bootstrap+less "StackOverflow.com"
348
50
  [issues]: https://github.com/less/less.js/issues "GitHub Issues for Less.js"
349
- [wiki]: https://github.com/less/less.js/wiki "The official wiki for Less.js"
350
- [download]: https://github.com/less/less.js/zipball/master "Download Less.js"
51
+ [download]: https://github.com/less/less.js/zipball/master "Download Less.js"
@@ -231,13 +231,13 @@ args = args.filter(function (arg) {
231
231
  case "--advanced":
232
232
  cleancssOptions.noAdvanced = false;
233
233
  break;
234
- case "--selectors-merge-mode":
235
- cleancssOptions.selectorsMergeMode = cleanOptionArgs[1];
234
+ case "--compatibility":
235
+ cleancssOptions.compatibility = cleanOptionArgs[1];
236
236
  break;
237
237
  default:
238
238
  console.log("unrecognised clean-css option '" + cleanOptionArgs[0] + "'");
239
239
  console.log("we support only arguments that make sense for less, '--keep-line-breaks', '-b'");
240
- console.log("'--s0', '--s1', '--advanced', '--skip-advanced', '--selectors-merge-mode'");
240
+ console.log("'--s0', '--s1', '--advanced', '--skip-advanced', '--compatibility'");
241
241
  continueProcessing = false;
242
242
  currentErrorcode = 1;
243
243
  break;
@@ -352,8 +352,9 @@ var parseLessFile = function (e, data) {
352
352
  sys.print(file + " ")
353
353
  }
354
354
  sys.print("\n");
355
- } else if(!options.lint) {
355
+ } else {
356
356
  try {
357
+ if (options.lint) { writeSourceMap = function() {} }
357
358
  var css = tree.toCSS({
358
359
  silent: options.silent,
359
360
  verbose: options.verbose,
@@ -374,15 +375,17 @@ var parseLessFile = function (e, data) {
374
375
  strictUnits: options.strictUnits,
375
376
  urlArgs: options.urlArgs
376
377
  });
377
- if (output) {
378
- ensureDirectory(output);
379
- fs.writeFileSync(output, css, 'utf8');
380
- if (options.verbose) {
381
- console.log('lessc: wrote ' + output);
382
- }
383
- } else {
384
- sys.print(css);
385
- }
378
+ if(!options.lint) {
379
+ if (output) {
380
+ ensureDirectory(output);
381
+ fs.writeFileSync(output, css, 'utf8');
382
+ if (options.verbose) {
383
+ console.log('lessc: wrote ' + output);
384
+ }
385
+ } else {
386
+ sys.print(css);
387
+ }
388
+ }
386
389
  } catch (e) {
387
390
  less.writeError(e, options);
388
391
  currentErrorcode = 2;