# Unique header generation require 'middleman-core/renderers/redcarpet' class UniqueHeadCounter < Middleman::Renderers::MiddlemanRedcarpetHTML @@head_count = {} def header(text, header_level) friendly_text = text.parameterize @@head_count[friendly_text] ||= 0 @@head_count[friendly_text] += 1 if @@head_count[friendly_text] > 1 friendly_text += "-#{@@head_count[friendly_text]}" end return "#{text}" end end