csscss

一个分析冗余度的 CSS 冗余度分析器。(A CSS redundancy analyzer that analyzes redundancy.)

  • 所有者: zmoazeni/csscss
  • 平台:
  • 许可证: MIT License
  • 分类:
  • 主题:
  • 喜欢:
    0
      比较:

Github星跟踪图

Build Status
Code Climate

What is it?

csscss will parse any CSS files you give it and let you know which
rulesets have duplicated declarations.

What is it for?

One of the best strategies for me to maintain CSS is to reduce
duplication as much as possible. It's not a silver bullet, but it sure
helps.

To do that, you need to have all the rulesets in your head at all times.
That's hard, csscss is easy. Let it tell you what is redundant.

How do I use it?

First you need to install it. It is currently packaged as a ruby gem:

$ gem install csscss

Note: csscss only works on ruby 1.9.x and up. It will have trouble with ruby 1.8.x.

Then you can run it in at the command line against CSS files.

$ csscss path/to/styles.css path/to/other-styles.css

{.contact .content .primary} and {article, #comments} share 5 rules
{.profile-picture}, {.screenshot img} and {a.blurb img} share 4 rules
{.work h2:first-child, .contact h2} and {body.home h2} share 4 rules
{article.blurb:hover} and {article:hover} share 3 rules

Run it in a verbose mode to see all the duplicated styles.

$ csscss -v path/to/styles.css

Run it against remote files by passing a valid URL.

$ csscss -v http://example.com/css/main.css

You can also choose a minimum number of matches, which will ignore any
rulesets that have fewer matches.

$ csscss -n 10 -v path/to/style.css # ignores rulesets with < 10 matches

If you prefer writing in Sass, you can also parse your sass/scss files.

$ gem install sass
$ csscss path/to/style.scss

Sass users may be interested in the --ignore-sass-mixins
experimental flag that won't match duplicate declarations from including mixins.

If you prefer writing in LESS, you can also parse your LESS files.

$ gem install less
$ csscss path/to/style.less

LESS requires an additional javascript runtime.
v8/therubyracer on most
rubies, and therubyrhino on
jruby.

Are there any community extensions?

Please submit an issue if you know of any others.

Why doesn't csscss automatically remove duplications for me?

I have been asked this a lot, but csscss is intentionally designed this
way. Check out this
post

for my reasoning.

I found bugs

This is still a new and evolving project. I heartily welcome feedback.
If you find any issues, please report them on
github.

Please include the smallest CSS snippet to describe the issue and the
output you expect to see.

I'm a dev, I can help

Awesome! Thanks! Here are the steps I ask:

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Make sure the tests pass (bundle exec rake test)
  5. Push to the branch (git push origin my-new-feature)
  6. Create new Pull Request

主要指标

概览
名称与所有者zmoazeni/csscss
主编程语言Ruby
编程语言Ruby (语言数: 2)
平台
许可证MIT License
所有者活动
创建于2013-03-01 23:17:25
推送于2018-11-27 17:45:20
最后一次提交2018-11-27 12:45:07
发布数11
最新版本名称v1.3.3 (发布于 2014-05-30 20:44:42)
第一版名称v0.0.1 (发布于 2013-03-01 18:36:35)
用户参与
星数2.9k
关注者数80
派生数151
提交数198
已启用问题?
问题数83
打开的问题数15
拉请求数6
打开的拉请求数1
关闭的拉请求数9
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?