mirror of https://github.com/IoTcat/Ushio-js.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
76 lines
2.2 KiB
76 lines
2.2 KiB
5 years ago
|
UglifyCSS is a port of [YUI Compressor](https://github.com/yui/yuicompressor) to [NodeJS](http://nodejs.org) for its CSS part. Its name is a reference to the awesome [UglifyJS](https://github.com/mishoo/UglifyJS) but UglifyCSS is not a CSS parser. Like YUI CSS Compressor, it applies many regexp replacements. Note that a [port to JavaScript](https://github.com/yui/ycssmin) is also available in the YUI Compressor repository.
|
||
|
|
||
|
UglifyCSS passes successfully the test suite of YUI compressor CSS.
|
||
|
|
||
|
Be sure to submit valid CSS to UglifyCSS or you could get weird results.
|
||
|
|
||
|
### Installation
|
||
|
|
||
|
For a command line usage:
|
||
|
```sh
|
||
|
$ npm install uglifycss -g
|
||
|
```
|
||
|
|
||
|
For API usage:
|
||
|
```sh
|
||
|
$ npm install uglifycss
|
||
|
```
|
||
|
|
||
|
From Github:
|
||
|
```sh
|
||
|
$ git clone git://github.com/fmarcia/UglifyCSS.git
|
||
|
```
|
||
|
|
||
|
### Command line
|
||
|
|
||
|
```sh
|
||
|
$ uglifycss [options] [filename] [...] > output
|
||
|
```
|
||
|
|
||
|
Options:
|
||
|
|
||
|
* `--max-line-len n` adds a newline (approx.) every `n` characters; `0` means no newline and is the default value
|
||
|
* `--expand-vars` expands variables; by default, `@variables` blocks are preserved and `var(x)`s are not expanded
|
||
|
* `--ugly-comments` removes newlines within preserved comments; by default, newlines are preserved
|
||
|
* `--cute-comments` preserves newlines within and around preserved comments
|
||
|
* `--convert-urls d` converts relative urls using the `d` directory as location target
|
||
|
* `--debug` prints full error stack on error
|
||
|
* `--output f` puts the result in `f` file
|
||
|
|
||
|
If no file name is specified, input is read from stdin.
|
||
|
|
||
|
### API
|
||
|
|
||
|
2 functions are provided:
|
||
|
|
||
|
* `processString( content, options )` to process a given string
|
||
|
* `processFiles( [ filename1, ... ], options )` to process the concatenation of given files
|
||
|
|
||
|
Options are identical to the command line:
|
||
|
* `<int> maxLineLen` for `--max-line-len n`
|
||
|
* `<bool> expandVars` for `--expand-vars`
|
||
|
* `<bool> uglyComments` for `--ugly-comments`
|
||
|
* `<bool> cuteComments` for `--cute-comments`
|
||
|
* `<string> convertUrls` for `--convert-urls d`
|
||
|
* `<bool> debug` for `--debug`
|
||
|
|
||
|
Both functions return uglified css.
|
||
|
|
||
|
#### Example
|
||
|
|
||
|
```js
|
||
|
var uglifycss = require('uglifycss');
|
||
|
|
||
|
var uglified = uglifycss.processFiles(
|
||
|
[ 'file1', 'file2' ],
|
||
|
{ maxLineLen: 500, expandVars: true }
|
||
|
);
|
||
|
|
||
|
console.log(uglified);
|
||
|
```
|
||
|
|
||
|
### License
|
||
|
|
||
|
UglifyCSS is MIT licensed.
|
||
|
|