zlzw / css-tidy

Removes unused selectors and rules from a .css file

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

What is this?

This python script reads a list of unused CSS selectors as generated by the "Dust-me Selectors" extension of mozilla firefox:

https://addons.mozilla.org/en-US/firefox/addon/dust-me-selectors/

and removes all the rules and styles that are no longer necessary.

Additionally, it tries to validate the stylesheets and exports ERRORS / WARNINGS detected. Note that those ERRORS / WARNINGS are ignored by default, and generation happens regardless, unless your stylesheet is seriously unreadable.

How to use this?

  1. Install Dust-me Selector, generate list of unused selectors, and save it in a CSV file. Alternatively, you can create a list of selectors you don't want yourself. The format of the CSV file is dead simple, see below.

  2. Make sure you have the dependencies you need installed. On a Debian / GNU linux system, you can use:

    $ apt-get install python-cssutils

  3. Run the cleaner:

    $ ./tidy.py /path/to/csvfile.csv

  4. Enjoy! You should see the cleaned CSS files in your working directory.

Format of the CSV file

The CSV file should start with a line containing the URL to read the CSS from, followed by an empty line, and followed by the list of selectors that are not necessary. Example:

$ cat /tmp/example.csv
file:///tmp/test-stylesheet.css

.p
tl ul#foo


$ ./tidy /tmp/example.csv

Will cause the file /tmp/test-stylesheet.css to be parsed, and all the rules that only have .p and/or tl ul#foo as selectors to be removed. The output file will be test-stylesheet.css.

About

Removes unused selectors and rules from a .css file


Languages

Language:Python 100.0%