<commit_before># Autoprefixer

Parse CSS and add prefixed properties and values when it really necessary
for selected browsers.

```js
var css = 'a { transition: transform 1s }';
var prefixed = autoprefixer.compile(css);
```

yields:

```css
a {
  -webkit-transition: -webkit-transform 1s;
  -ms-transition: -ms-transform 1s;
  -o-transition: -o-transform 1s;
  -webkit-transition: transform 1s;
  -o-transition: transform 1s;
  transition: transform 1s
}
```

Features:
* You write normal CSS (or use Autoprefixer after Sass, Stylus
  or other compiler).
* You write normal properties (not special mixins), so you didn’t remember
  which properties need prefixes now.
* Autoprefixed uses only really necessary prefixes. You set browsers (by default
  last 2 version for each browsers). Do you know, that prefixes for
  `border-radius` [is not necessary](http://caniuse.com/border-radius)
  for a long time?
* Properties and browsers database is updated automatically
  (from [Can I Use](http://caniuse.com/)), so prefixes will be always actual
  (scripts don’t have holidays and work).
* It adds prefixes also to the values. For example, to `calc(1em + 5px)` or
  to properties names in `transition`.

## Browsers

You can specify actual for your project browsers (by default, it’s
`"last 2 versions"`):

```js
autoprefixer.compile(css, ["last 1 version", "> 1%", "ie 8", "ie 7"]);
```

* `"last n versions"` is last `n` versions for each browsers (for example,
  [Google also uses](http://support.google.com/a/bin/answer.py?answer=33864)
  “last 2 version” strategy).
* `> n%` is browser versions, which global usage statistics is more than `n`%.
* You can also set browsers directly.

## Usage

### Node.js

Use `autoprefixer` npm-package:

```js
var autoprefixer = require('autoprefixer');
var prefixed     = autoprefixer.compile(css);
```

### Rework

Autoprefixer is a [Rework](https://github.com/visionmedia/rework) filter,
so you can can combine it with other filters:

```js
rework(css).
    use( autoprefixer.filter(["> 1%", "opera 12.5"]) ).
    use( rework.references() ).
    toString();
```

### Others

You can use `autoprefixer` binary to process CSS files in any assets manager:

```
autoprefixer *.css
```

See `autoprefixer -h` for help.<commit_msg>Couple of fixes in README<commit_after># Autoprefixer

Parses CSS and add prefixed properties and values when it really necessary for selected browsers.

```js
var css = 'a { transition: transform 1s }';
var prefixed = autoprefixer.compile(css);
```

yields:

```css
a {
  -webkit-transition: -webkit-transform 1s;
  -ms-transition: -ms-transform 1s;
  -o-transition: -o-transform 1s;
  -webkit-transition: transform 1s;
  -o-transition: transform 1s;
  transition: transform 1s
}
```

Features:

* You write normal CSS (or use Autoprefixer after Sass, Stylus
  or another preprocessor).
* You write normal properties (not special mixins), so you don't need to remember which properties needs to be prefixed.
* Autoprefixed uses only really necessary prefixes. You set browsers (by default
  last 2 version for each browsers). Do you know, that prefixes for
  `border-radius` [is not necessary](http://caniuse.com/border-radius)
  for a long time?
* Properties and browsers database is updated automatically
  (from [Can I Use](http://caniuse.com/)), so prefixes will be always actual
  (scripts don’t have holidays and work).
* It also adds prefixes to the values. For example, to `calc(1em + 5px)` or
  to properties names in `transition`.

## Browsers

You can specify browsers actual for your project (by default, it’s
`"last 2 versions"`):

```js
autoprefixer.compile(css, ["last 1 version", "> 1%", "ie 8", "ie 7"]);
```

* `"last n versions"` is last `n` versions for each browser (for example,
  [Google also uses](http://support.google.com/a/bin/answer.py?answer=33864)
  “last 2 version” strategy).
* `> n%` is browser versions, which global usage statistics is more than `n`%.
* You can also set browsers directly.

## Usage

### Node.js

Use `autoprefixer` npm-package:

```js
var autoprefixer = require('autoprefixer');
var prefixed     = autoprefixer.compile(css);
```

### Rework

Autoprefixer is a [Rework](https://github.com/visionmedia/rework) filter,
so you can can combine it with other filters:

```js
rework(css).
    use( autoprefixer.filter(['> 1%', 'opera 12.5']) ).
    use( rework.references() ).
    toString();
```

### Others

You can use `autoprefixer` binary to process CSS files in any assets manager:

```
autoprefixer *.css
```

See `autoprefixer -h` for help.
{'fraction_non_alphanumeric': 0.12710935787858865, 'fraction_numerical': 0.010957703265395573, 'mean_word_length': 4.216, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 9, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2691088', 'n_tokens_mistral': 1556, 'n_tokens_neox': 1482, 'n_words': 546}