Class: Slippery::Processors::AddHighlight

Inherits:
Object
  • Object
show all
Includes:
Slippery::ProcessorHelpers
Defined in:
lib/slippery/processors/add_highlight.rb

Constant Summary collapse

DEFAULT_STYLE =
:default

Instance Method Summary collapse

Methods included from Slippery::ProcessorHelpers

asset_uri, #data_attributes, #hash_to_js, #include_local_css, #include_local_javascript, included, #javascript_include_tag, #stylesheet_link_tag

Constructor Details

#initialize(style = DEFAULT_STYLE) ⇒ AddHighlight

Returns a new instance of AddHighlight.



8
9
10
# File 'lib/slippery/processors/add_highlight.rb', line 8

def initialize(style = DEFAULT_STYLE)
  @style = style
end

Instance Method Details

#call(doc) ⇒ Object



12
13
14
15
16
17
18
19
20
21
# File 'lib/slippery/processors/add_highlight.rb', line 12

def call(doc)
  js = asset_uri('highlight.js/highlight.pack.js')
  css = asset_uri("highlight.js/styles/#{@style}.css")

  doc.rewrite 'head' do |head|
    head <<= H[:link, rel: "stylesheet", href: css]
    head <<= H[:script, src: js]
    head <<= H[:script, 'hljs.initHighlightingOnLoad();']
  end
end