prefixr
v1.0.1
Published
Query prefixr.com in node and on the command line.
Readme
Prefixr on the command line
prefixr.com is an awesome tool that adds vendor prefixes to your CSS. Prefixr-CL is a node package that provides an easy way to query the Prefixr API in node and on the command line.
Installation
Easy installation with NPM:
$ npm install -g prefixrCommand line usage
$ prefixr
Usage: prefixr --input <files> [output options] [other options]
Examples:
--input base.css app.css --output styles.css
-i base app -o styles # Drop .css, use shortcut options.
-i base -o styles -e ms o # Don't add prefixes for IE and Opera
Meta:
-h, --help print usage information
-v, --version print the version number
Input and output options:
-i, --input <files> the CSS files you want to prefix
-o, --output <files> write the prefixed CSS into <files>
-s, --output-self write the prefixed CSS into the input files
-p, --print print the prefixed CSS
Other options:
-c, --compress compress the prefixed CSS
-nv, --no-variables keep variables
-e, --exclude <vendors> exclude 'moz', 'ms' and / or 'o'
-w, --watch rerun command if an input file changes
This package queries prefixr.com itself, so the prefixing itself can take around one second, since a HTTP request is needed.
Prefix the contents of files and write the output to another file:
$ prefixr --input one.css two.css --output styles.css
$ prefixr -i one two -o styles # You can drop the '.css' extension.Prefix the contents of files and write the prefixed CSS of each into those files:
$ prefixr --input one two --output-self
$ prefixr -i one two -sPrefix the content of files and echo it into the terminal:
$ prefixr --input one.css --print
$ prefixr -i one -pExclude -ms and -o:
$ prefixr --input one.css -output-self -exclude ms o
$ prefixr -i one -s -e ms oCompress the output:
$ prefixr --input one.css --output styles.css --compress
$ prefixr -i one -o styles -cWatch mode:
$ prefixr --watch --input one.css two.css --output styles.css
$ prefixr -w -i one two -o stylesMeta stuff:
$ prefixr
$ prefixr -?
$ prefixr -h
$ prefixr --help
$ prefixr -v
$ prefixr --versionNode usage
The node API provides two minimalistic functions to query the Prefixr API.
var prefix = require('prefixr');
var css = 'div { box-shadow: 1px 0 2px black; }';
var options = {
compress: true, // Default: false
variables: true, // Default: true
exclude: ['o', 'ms'] // Array with 'o', 'ms', 'moz' or just a plain string or 'all' to exclude all three options. Default: [].
};
var callback = function (prefixed) { console.log(prefixed); }
prefix(css, options, callback);
prefix(css, callback); // The options object can be dropped.
prefix.files('examples/styles.css', options, callback); // Prefix the contents of a file.
prefix.files('examples/styles', options, callback); // The '.css' extension can be dropped.
prefix.files(['examples/styles', 'examples/more_styles.css'], options, callback); // Prefix the contents of several files.Todo
- Refactoring – A lot.
- Fix watch mode in combination with
--output-self. - Print time + file name when an input file changes in watch mode.
