class Splam::Rules::LineLength
Public Instance Methods
name()
click to toggle source
# File lib/splam/rules/line_length.rb, line 3 def name "Line length" end
run()
click to toggle source
Penalize long line lengths.
# File lib/splam/rules/line_length.rb, line 8 def run lines = @body.split("\n") lines.each do |line| next if line =~ /\A\s{4,}/ # ignore code blocks # multiplier = (lines.size == 1) ? 10 : 1 # one line? fail. multiplier = 1 # 1 point for each 40 chars in a line. hits = (line.size / 40) * multiplier add_score hits, "lines over 40 chars" # 2 more points if line is longer than 80 hits = (line.size / 80) * 2 * multiplier add_score hits, "lines over 80 chars" end end