File tree Expand file tree Collapse file tree 2 files changed +19
-1
lines changed Expand file tree Collapse file tree 2 files changed +19
-1
lines changed Original file line number Diff line number Diff line change
1
+ # Unique header generation
2
+ require './lib/unique_head.rb'
3
+
1
4
# Markdown
2
5
set :markdown_engine , :redcarpet
3
6
set :markdown ,
7
10
prettify : true ,
8
11
tables : true ,
9
12
with_toc_data : true ,
10
- no_intra_emphasis : true
13
+ no_intra_emphasis : true ,
14
+ renderer : UniqueHeadCounter
11
15
12
16
# Assets
13
17
set :css_dir , 'stylesheets'
Original file line number Diff line number Diff line change
1
+ # Unique header generation
2
+ require 'middleman-core/renderers/redcarpet'
3
+ class UniqueHeadCounter < Middleman ::Renderers ::MiddlemanRedcarpetHTML
4
+ @@head_count = { }
5
+ def header ( text , header_level )
6
+ friendly_text = text . parameterize
7
+ @@head_count [ friendly_text ] ||= 0
8
+ @@head_count [ friendly_text ] += 1
9
+ if @@head_count [ friendly_text ] > 1
10
+ friendly_text += "-#{ @@head_count [ friendly_text ] } "
11
+ end
12
+ return "<h#{ header_level } id='#{ friendly_text } '>#{ text } </h#{ header_level } >"
13
+ end
14
+ end
You can’t perform that action at this time.
0 commit comments