OCBNET-CSS3 =========== Perl module for CSS3 parsing, manipulation and rendering. It does this by parsing the CSS into a DOM like structure. You then can use various methods to manipulate it and finally render it again. It should also be possible to use it as a base for an SCSS compiler implementation. Should be able to parse nearly any css based format (i.e. scss). We try to be as unstrict as possible when parsing css code and blocks. If the blocks are in a known format, the node/object will automatically be set to the specific class. This enables any implementor to define its own specific implementation (todo). Great care has been taken to parse everything correctly (like handling escaped chars and chars in quoted strings correctly). I think many css processors and tools ignore these edge cases. This module has been built from ground up to actually be able to parse them correctly. The key base to this is a set of well tested regular expressions, which may be handy for other css related tasks. INSTALL ======= [![Build Status](https://travis-ci.org/mgreter/OCBNET-CSS3.svg?branch=master)](https://travis-ci.org/mgreter/OCBNET-CSS3) [![Coverage Status](https://img.shields.io/coveralls/mgreter/OCBNET-CSS3.svg)](https://coveralls.io/r/mgreter/OCBNET-CSS3?branch=master) Standard process for building & installing modules: ``` perl Build.PL ./Build ./Build test ./Build install ``` Or, if you're on a platform (like DOS or Windows) that doesn't require the "./" notation, you can do this: ``` perl Build.PL Build Build test Build install ``` Or, if [cpanminus](http://search.cpan.org/~miyagawa/App-cpanminus/) is available: ``` cpanm git://github.com/mgreter/OCBNET-CSS3.git ``` blessc ====== Rewrite the given input.css if it exceeds the IE limitations (only selectors). Adds imports and additional stylesheets. This has been inspired by http://blesscss.com/. But this version "should" handle nested blocks. The utility tries to act as a drop in replacement (altough not tested on real examples). ``` blessc [options] [ source | - ] [destination] ``` ``` -v, --version print version -h, --help print this help -f, --force overwrite input file -x, --compress "minify" @import --no-cleanup don\'t remove old css file before overwriting --no-imports disable @import on stylesheets --no-cache-buster turn off the cache buster ``` csslint ======= Check the given file if it is within the IE limits (selectors and imports). ``` csslint [options] [ source | - ] ``` ``` -v, --version print version -h, --help print this help ``` sass2scss ========= Converts old indented sass syntax to newer scss syntax (writes to stdout). ``` sass2scss [options] [ source | - ] ``` ``` -v, --version print version -h, --help print this help -p, --pretty pretty print output repeat for c block style ```