Class: Overcommit::Hook::PreCommit::CssLint

Inherits:
Base
  • Object
show all
Defined in:
lib/overcommit/hook/pre_commit/css_lint.rb

Overview

Runs ‘csslint` against any modified CSS files.

Instance Method Summary collapse

Methods inherited from Base

#applicable_files, #command, #description, #enabled?, #in_path?, #initialize, #name, #quiet?, #required?, #run?, #skip?

Constructor Details

This class inherits a constructor from Overcommit::Hook::Base

Instance Method Details

#runObject



4
5
6
7
8
9
10
11
12
13
14
# File 'lib/overcommit/hook/pre_commit/css_lint.rb', line 4

def run
  unless in_path?('csslint')
    return :warn, 'csslint not installed -- run `npm install -g csslint`'
  end

  paths = applicable_files.join(' ')

  result = command("csslint --quiet --format=compact #{paths} | grep 'Error - '")
  output = result.stdout
  return (output !~ /Error - (?!Unknown @ rule)/ ? :good : :bad), output
end