The CSS language is actually pretty flat and rather cumbersome to maintain. Many preprocessors have been created, but none in modern C++ supporting CSS 3 and the preliminary CSS 4 languages. CSS Preprocessor offers that functionality as a command line tool and a C++ library.
The main features of CSS Preprocessor are:
- Nested rules
- Nested fields
- User defined functions
@mixinto create advanced / complex variables and functions
- Conditional compilation
- Strong validation of your CSS code (rules, field names, field data)
- Minify or beautify CSS code
CMakeLists.txt file depends on the
csspp command line tool makes use of the
advgetopt C++ library to
handle the command line argument.
The library requires at least C++14 (it may still work on C++11).
To generate the documentation, you will need to have Doxygen. That should not be required (if you have problems with that, let me know.) If you get Doxygen, having the dot tool is a good idea to get all the graphs generated.
Compile the library and
csspp command line tool
The INSTALL in the root directory tells you how to generate the
distribution directory (or dev/INSTALL in the
csspp project itself.)
We will be looking at making this simpler with time... for now, the environment is a bit convoluted.
The documentation is available online. A copy can be downloaded from SourceForge.net.
Submit bug reports and patches on github.
This file is part of the snapcpp project.