blob: 8233c83e62ab2c3e6b79a7995af76cd57d3f60dc (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
class PrismSyntaxHighlighter < Asciidoctor::SyntaxHighlighter::Base
register_for 'prism'
def format node, lang, opts
opts[:transform] = proc do |pre, code|
code['class'] = %(language-#{lang}) if lang
end
super
end
def docinfo? location
location == :footer
end
def docinfo location, doc, opts
base_url = doc.attr 'prismdir', %(#{opts[:cdn_base_url]}/prism/1.15.0)
slash = opts[:self_closing_tag_slash]
unless (theme_name = doc.attr 'prism-style', 'prism') == 'prism'
theme_name = %(prism-#{theme_name})
end
%(<link rel="stylesheet" href="#{base_url}/themes/#{theme_name}.min.css"#{slash}>
<script src="#{base_url}/prism.min.js"></script>
<script src="#{base_url}/components/prism-ruby.min.js"></script>)
end
end
|