module Buildr::CssLint
Provides the css_lint:html
and css_lint:xml
tasks. Require explicitly using require "buildr/css_lint"
.
Public Class Methods
css_lint(output_file, source_paths, options = {})
click to toggle source
# File addon/buildr/css_lint.rb, line 22 def css_lint(output_file, source_paths, options = {}) args = [] args << 'csslint' args << "--format=#{options[:format]}" if options[:format] args << '--quiet' [:errors, :warnings, :ignore].each do |severity| if options[severity] && !options[severity].empty? args << "--#{severity}=#{options[severity].join(',')}" end end if options[:excludes] && !options[:excludes].empty? args << "--exclude-list=#{options[:excludes].join(',')}" end source_paths.each do |source_path| args << source_path.to_s end command = args.join(' ') mkdir_p File.dirname(output_file) File.open(output_file, 'wb') do |f| f.write `#{command}` end if 0 != $?.exitstatus error = IO.read(output_file) rm_f output_file raise "Problem running csslint: #{command}\n#{error}" end end